на 45 строчке в последнем методе изначально был код
public static void printMatrix(int m, int n, String value) {
System.out.println("Заполняем объектами String");
printMatrix(m, n, (Object) value);
Вопрос:
Почему при смене типа (45 строчка) int m на Float m IDEA предложила поменять тип Object на String ? (47 строчка) После смены метод стал корректным.
и еще почему при смене в коде
public static void printMatrix(int m, int n, String value) {
System.out.println("Заполняем объектами String");
printMatrix(m, n, (Object) value);
}
в первой строке меняю тип int m на тип long Idea предлагает привести в 3 строке этого метода
параметр m к (int) m ?
Те кто знает ответ просьба пояснить. Спасибо.
package com.javarush.task.task15.task1507;
/*
ООП - Перегрузка
*/
public class Solution {
public static void main(String[] args) {
printMatrix(2, 3, "8");
}
public static void printMatrix(int m, int n, String value) {
System.out.println("Заполняем объектами String");
printMatrix(m, n, (Object) value);
}
public static void printMatrix(int m, int n, Object value) {
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
System.out.print(value);
}
System.out.println();
}
}
public static void printMatrix(Integer m, int n, String value) {
System.out.println("Заполняем объектами String");
printMatrix(m, n, (Object) value);
}
public static void printMatrix(int m, Integer n, String value) {
System.out.println("Заполняем объектами String");
printMatrix(m, n, (Object) value);
}
public static void printMatrix(float m, int n, String value) {
System.out.println("Заполняем объектами String");
printMatrix((int) m, n, (Object) value);
}
public static void printMatrix(int m, float n, String value) {
System.out.println("Заполняем объектами String");
printMatrix(m, (int) n, (Object) value);
}
public static void printMatrix(int m, int n, float value) {
System.out.println("Заполняем объектами String");
printMatrix(m, n, (Float) value);
}
public static void printMatrix(Float m, int n, String value) {
System.out.println("Заполняем объектами String");
printMatrix(m, n, (String) value);
}
}