我是Java的新学习所以问题是如何将数组的字符串元素拆分为:3A +这意味着3个小时并且在其中有A +,单独获取信用和单独评分的方法是什么? 因为我创建了具有这些属性的班级学生 班级学生有以下成员: •四个属性:名称,ID,gradList和GPA。 •gradList属性表示所有课程的学生成绩;第一个角色在哪里 代表课程学分,然后是成绩。 (如果gradList上的第一个元素是3A +,那么 意味着学生需要三个小时的A +课程。)
答案 0 :(得分:0)
我们假设 str 是包含值3A +或2B +等的字符串。
这可以分成满足条件的字符串数组
String[] strArr =str.split("(?<=[\\d,]+)(?![\\d,])");
此处str
使用正则表达式模式strArr
分成一个字符串数组(?<=[\\d,]+)(?![\\d,])
,
表示在数字后面选择一个空字符,另外还有一个负面外观{before,behind} s以避免在中间匹配它们(如果信用证有多个数字)
如果字符串格式类似 3,A + 则更简单,
String[] strArr =str.split(",");
此处strArr[0]
包含 credit 的值,strArr[1]
包含 grade 的值。
希望这会有所帮助。