Java 如何删除字符串值两边的方括号
当我在表上选择一行时,它将以字符串形式打印所选项目,如图所示。如何从字符串的任一侧移除方括号 下面是我用数据填充文本字段的代码。您可以看到它已成功填充,但使用[] 表和输出Java 如何删除字符串值两边的方括号,java,javafx,Java,Javafx,当我在表上选择一行时,它将以字符串形式打印所选项目,如图所示。如何从字符串的任一侧移除方括号 下面是我用数据填充文本字段的代码。您可以看到它已成功填充,但使用[] 表和输出 您可以使用input.substr(1,input.length-1)删除第一个和最后一个字符,也可以使用input.substr(1,input.length-1)删除它们。替换(“[”,”)。替换(“]”,”),如果不可能出现其他情况。您可以使用input.substr(1,input.length-1)删除第一个和最
您可以使用
input.substr(1,input.length-1)
删除第一个和最后一个字符,也可以使用input.substr(1,input.length-1)删除它们。替换(“[”,”)。替换(“]”,”)
,如果不可能出现其他情况。您可以使用input.substr(1,input.length-1)删除第一个和最后一个字符
或仅使用输入删除它们。替换(“[”,”)。如果不可能出现其他情况,则替换(“]”,”)
Arrays.stream(str_array).collect(Collectors.joining(","));
这会产生所需的结果,而无需“后处理”
这会产生所需的结果,而无需“后处理”您的
newValue
应该是对象。假设它是SchoolInfo
的一个对象,变量为String code
,String name
,String讲师
,int year
,以及int term
。您的对象
应该具有getter
和setter
。你应该做类似的事情
警告:其他一些答案可能会完成工作,但都是非常糟糕的想法。您试图处理这些数据的方式是个坏主意。
tableView.getSelectionModel().selectedItemProperty().addListener((v, oldValue, newValue) -> {
SchoolInfo tempSchoolInfo = (SchoolInfo)newValue;
String code = tempSchoolInfo.getCode();
String name = tempSchoolInfo .getName();
String lecturer = tempSchoolInfo.getLecturer;
int year = tempSchoolInfo.getYear();
int semester = tempSchoolInfo.getSemester();
codeInput.setText(code);
nameInput.setText(name);
lectureInput.setText(lecturer);
yearInput.setText(Integer.toString(year));
semesterInput.setText(Integer.toString(semester));
System.out.println(input);
});
您的newValue
应该是对象
。假设它是SchoolInfo
的一个对象,变量为String code
,String name
,String讲师
,int year
,以及int term
。您的对象
应该具有getter
和setter
。你应该做类似的事情
警告:其他一些答案可能会完成工作,但都是非常糟糕的想法。您试图处理这些数据的方式是个坏主意。
tableView.getSelectionModel().selectedItemProperty().addListener((v, oldValue, newValue) -> {
SchoolInfo tempSchoolInfo = (SchoolInfo)newValue;
String code = tempSchoolInfo.getCode();
String name = tempSchoolInfo .getName();
String lecturer = tempSchoolInfo.getLecturer;
int year = tempSchoolInfo.getYear();
int semester = tempSchoolInfo.getSemester();
codeInput.setText(code);
nameInput.setText(name);
lectureInput.setText(lecturer);
yearInput.setText(Integer.toString(year));
semesterInput.setText(Integer.toString(semester));
System.out.println(input);
});
newValue
的数据类型是什么?是否真的需要将其转换为字符串,然后提取值?它看起来像newValue
(即TableView
的支持列表中的元素类型)在这里是一个列表。那么为什么不直接执行System.out.println(String.join(“,”,newValue))代码>?(尽管@Sedrick正确地指出,列表首先不是一个好的数据表示形式。)newValue
的数据类型是什么?是否真的需要将其转换为字符串,然后提取值?它看起来像newValue
(也就是说,TableView
的支持列表中的元素类型)在这里是一个列表
。那么为什么不干脆做System.out.println(String.join(“,”,newValue));
?(尽管@Sedrick正确地指出,列表
在这里首先不是一个好的数据表示形式。)yearInput.setText(Integer.parseInt(year));
-为什么要解析int
?还有,为什么要解析所有的临时变量?我紧跟着OP的代码。parseInt
应该是toString()
。yearInput.setText(Integer.parseInt(year))
-为什么要解析int
?还有,为什么要解析所有的临时变量?我紧跟着OP的代码。parseInt
应该是toString()
。很好。