如何缩短此java代码?
我正在为android制作一个时间表应用程序,并加载一个如何缩短此java代码?,java,android,Java,Android,我正在为android制作一个时间表应用程序,并加载一个JSON文件,其中包含要解析的所有数据,这些数据位于TextViews表格中 这需要大量的复制粘贴工作。现在我使用了很多相同的代码。 是否可以缩短此代码?如果是,怎么做 resetrooster(); String jsonStr = jsonStr(); try { JSONObject jsonObj = new JSONObject(jsonStr);
JSON
文件,其中包含要解析的所有数据,这些数据位于TextView
s表格中
这需要大量的复制粘贴工作。现在我使用了很多相同的代码。
是否可以缩短此代码?如果是,怎么做
resetrooster();
String jsonStr = jsonStr();
try {
JSONObject jsonObj = new JSONObject(jsonStr);
//JSON Array node
removed_classes = jsonObj.getJSONArray(TAG_REMOVED_CLASSES);
classes = jsonObj.getJSONArray(TAG_CLASSES);
new_classes = jsonObj.getJSONArray(TAG_NEW_CLASSES);
//Looping through all lessons
for (int i = 0; i < classes.length(); i++) {
JSONObject c = classes.getJSONObject(i);
String day = c.getString(TAG_DAY);
String room = c.getString(TAG_ROOM);
String hour = c.getString(TAG_HOUR);
String classs = c.getString(TAG_CLASSS);
String teacher = c.getString(TAG_TEACHER);
//Fill in the right lessons for the right day
if (theday == 1){
if (day.contains("1")){
if (hour.contains("1") && !hour.contains("10") && !hour.contains("11") && !hour.contains("12") && !hour.contains("13") ){
uur1.setText(hour); doc1.setText(teacher); vak1.setText(classs); lok1.setText(room);}
if (hour.contains("2")&& !hour.contains("12")){
uur2.setText(hour); doc2.setText(teacher); vak2.setText(classs); lok2.setText(room);}
if (hour.contains("3")&& !hour.contains("13")){
uur3.setText(hour); doc3.setText(teacher); vak3.setText(classs); lok3.setText(room);}
if (hour.contains("4")){
uur4.setText(hour); doc4.setText(teacher); vak4.setText(classs); lok4.setText(room);}
if (hour.contains("5")){
uur5.setText(hour); doc5.setText(teacher); vak5.setText(classs); lok5.setText(room);}
if (hour.contains("6")){
uur6.setText(hour); doc6.setText(teacher); vak6.setText(classs); lok6.setText(room);}
if (hour.contains("7")){
uur7.setText(hour); doc7.setText(teacher); vak7.setText(classs); lok7.setText(room);}
if (hour.contains("8")){
uur8.setText(hour); doc8.setText(teacher); vak8.setText(classs); lok8.setText(room);}
if (hour.contains("9")){
uur9.setText(hour); doc9.setText(teacher); vak9.setText(classs); lok9.setText(room);}
if (hour.contains("10")){
uur10.setText(hour); doc10.setText(teacher); vak10.setText(classs); lok10.setText(room);}
if (hour.contains("11")){
uur11.setText(hour); doc11.setText(teacher); vak11.setText(classs); lok11.setText(room);}
if (hour.contains("12")){
uur12.setText(hour); doc12.setText(teacher); vak12.setText(classs); lok12.setText(room);}
if (hour.contains("13")){
uur13.setText(hour); doc13.setText(teacher); vak13.setText(classs); lok13.setText(room);}
}}
else if (theday == 2){
if (day.contains("2")){
if (hour.contains("1") && !hour.contains("10") && !hour.contains("11") && !hour.contains("12") && !hour.contains("13") ){
uur1.setText(hour); doc1.setText(teacher); vak1.setText(classs); lok1.setText(room);}
if (hour.contains("2")&& !hour.contains("12")){
uur2.setText(hour); doc2.setText(teacher); vak2.setText(classs); lok2.setText(room);}
if (hour.contains("3")&& !hour.contains("13")){
uur3.setText(hour); doc3.setText(teacher); vak3.setText(classs); lok3.setText(room);}
if (hour.contains("4")){
uur4.setText(hour); doc4.setText(teacher); vak4.setText(classs); lok4.setText(room);}
if (hour.contains("5")){
uur5.setText(hour); doc5.setText(teacher); vak5.setText(classs); lok5.setText(room);}
if (hour.contains("6")){
uur6.setText(hour); doc6.setText(teacher); vak6.setText(classs); lok6.setText(room);}
if (hour.contains("7")){
uur7.setText(hour); doc7.setText(teacher); vak7.setText(classs); lok7.setText(room);}
if (hour.contains("8")){
uur8.setText(hour); doc8.setText(teacher); vak8.setText(classs); lok8.setText(room);}
if (hour.contains("9")){
uur9.setText(hour); doc9.setText(teacher); vak9.setText(classs); lok9.setText(room);}
if (hour.contains("10")){
uur10.setText(hour); doc10.setText(teacher); vak10.setText(classs); lok10.setText(room);}
if (hour.contains("11")){
uur11.setText(hour); doc11.setText(teacher); vak11.setText(classs); lok11.setText(room);}
if (hour.contains("12")){
uur12.setText(hour); doc12.setText(teacher); vak12.setText(classs); lok12.setText(room);}
if (hour.contains("13")){
uur13.setText(hour); doc13.setText(teacher); vak13.setText(classs); lok13.setText(room);}
}}
else if (theday == 3){
if (day.contains("3")){
if (hour.contains("1") && !hour.contains("10") && !hour.contains("11") && !hour.contains("12") && !hour.contains("13") ){
uur1.setText(hour); doc1.setText(teacher); vak1.setText(classs); lok1.setText(room);}
if (hour.contains("2")&& !hour.contains("12")){
uur2.setText(hour); doc2.setText(teacher); vak2.setText(classs); lok2.setText(room);}
if (hour.contains("3")&& !hour.contains("13")){
uur3.setText(hour); doc3.setText(teacher); vak3.setText(classs); lok3.setText(room);}
if (hour.contains("4")){
uur4.setText(hour); doc4.setText(teacher); vak4.setText(classs); lok4.setText(room);}
if (hour.contains("5")){
uur5.setText(hour); doc5.setText(teacher); vak5.setText(classs); lok5.setText(room);}
if (hour.contains("6")){
uur6.setText(hour); doc6.setText(teacher); vak6.setText(classs); lok6.setText(room);}
if (hour.contains("7")){
uur7.setText(hour); doc7.setText(teacher); vak7.setText(classs); lok7.setText(room);}
if (hour.contains("8")){
uur8.setText(hour); doc8.setText(teacher); vak8.setText(classs); lok8.setText(room);}
if (hour.contains("9")){
uur9.setText(hour); doc9.setText(teacher); vak9.setText(classs); lok9.setText(room);}
if (hour.contains("10")){
uur10.setText(hour); doc10.setText(teacher); vak10.setText(classs); lok10.setText(room);}
if (hour.contains("11")){
uur11.setText(hour); doc11.setText(teacher); vak11.setText(classs); lok11.setText(room);}
if (hour.contains("12")){
uur12.setText(hour); doc12.setText(teacher); vak12.setText(classs); lok12.setText(room);}
if (hour.contains("13")){
uur13.setText(hour); doc13.setText(teacher); vak13.setText(classs); lok13.setText(room);}
}}
else if (theday == 4){
if (day.contains("4")){
if (hour.contains("1") && !hour.contains("10") && !hour.contains("11") && !hour.contains("12") && !hour.contains("13") ){
uur1.setText(hour); doc1.setText(teacher); vak1.setText(classs); lok1.setText(room);}
if (hour.contains("2")&& !hour.contains("12")){
uur2.setText(hour); doc2.setText(teacher); vak2.setText(classs); lok2.setText(room);}
if (hour.contains("3")&& !hour.contains("13")){
uur3.setText(hour); doc3.setText(teacher); vak3.setText(classs); lok3.setText(room);}
if (hour.contains("4")){
uur4.setText(hour); doc4.setText(teacher); vak4.setText(classs); lok4.setText(room);}
if (hour.contains("5")){
uur5.setText(hour); doc5.setText(teacher); vak5.setText(classs); lok5.setText(room);}
if (hour.contains("6")){
uur6.setText(hour); doc6.setText(teacher); vak6.setText(classs); lok6.setText(room);}
if (hour.contains("7")){
uur7.setText(hour); doc7.setText(teacher); vak7.setText(classs); lok7.setText(room);}
if (hour.contains("8")){
uur8.setText(hour); doc8.setText(teacher); vak8.setText(classs); lok8.setText(room);}
if (hour.contains("9")){
uur9.setText(hour); doc9.setText(teacher); vak9.setText(classs); lok9.setText(room);}
if (hour.contains("10")){
uur10.setText(hour); doc10.setText(teacher); vak10.setText(classs); lok10.setText(room);}
if (hour.contains("11")){
uur11.setText(hour); doc11.setText(teacher); vak11.setText(classs); lok11.setText(room);}
if (hour.contains("12")){
uur12.setText(hour); doc12.setText(teacher); vak12.setText(classs); lok12.setText(room);}
if (hour.contains("13")){
uur13.setText(hour); doc13.setText(teacher); vak13.setText(classs); lok13.setText(room);}
}}
else if (theday == 5){
if (day.contains("5")){
if (hour.contains("1") && !hour.contains("10") && !hour.contains("11") && !hour.contains("12") && !hour.contains("13") ){
uur1.setText(hour); doc1.setText(teacher); vak1.setText(classs); lok1.setText(room);}
if (hour.contains("2")&& !hour.contains("12")){
uur2.setText(hour); doc2.setText(teacher); vak2.setText(classs); lok2.setText(room);}
if (hour.contains("3")&& !hour.contains("13")){
uur3.setText(hour); doc3.setText(teacher); vak3.setText(classs); lok3.setText(room);}
if (hour.contains("4")){
uur4.setText(hour); doc4.setText(teacher); vak4.setText(classs); lok4.setText(room);}
if (hour.contains("5")){
uur5.setText(hour); doc5.setText(teacher); vak5.setText(classs); lok5.setText(room);}
if (hour.contains("6")){
uur6.setText(hour); doc6.setText(teacher); vak6.setText(classs); lok6.setText(room);}
if (hour.contains("7")){
uur7.setText(hour); doc7.setText(teacher); vak7.setText(classs); lok7.setText(room);}
if (hour.contains("8")){
uur8.setText(hour); doc8.setText(teacher); vak8.setText(classs); lok8.setText(room);}
if (hour.contains("9")){
uur9.setText(hour); doc9.setText(teacher); vak9.setText(classs); lok9.setText(room);}
if (hour.contains("10")){
uur10.setText(hour); doc10.setText(teacher); vak10.setText(classs); lok10.setText(room);}
if (hour.contains("11")){
uur11.setText(hour); doc11.setText(teacher); vak11.setText(classs); lok11.setText(room);}
if (hour.contains("12")){
uur12.setText(hour); doc12.setText(teacher); vak12.setText(classs); lok12.setText(room);}
if (hour.contains("13")){
uur13.setText(hour); doc13.setText(teacher); vak13.setText(classs); lok13.setText(room);}
}}
}
} catch (JSONException e) {
e.printStackTrace();
}
resetrooster();
字符串jsonStr=jsonStr();
试一试{
JSONObject jsonObj=新的JSONObject(jsonStr);
//JSON数组节点
removed_classes=jsonObj.getJSONArray(TAG_removed_classes);
classes=jsonObj.getJSONArray(标记类);
new_classes=jsonObj.getJSONArray(TAG_new_classes);
//循环学习所有课程
对于(int i=0;ipublic class Session {
private final TextView hour;
private final TextView teacher;
private final TextView subject;
private final TextView room;
public Session(TextView hourTextView, TextView teacherTextView, TextView subjectTextView, TextView roomTextView) {
this.hourTextView = hourTextView;
this.teacherTextView = teacherTextView;
this.subjectTextView = subjectTextView;
this.roomTextView = roomTextView;
}
public void fill(String hour, String teacher, String subject, String room) {
hourTextView.setText(hour);
teacherTextView.setText(teacher);
subjectTextView.setText(subject);
roomTextView.setText(room);
}
}
HashMap<Byte, Session> sessions = new HashMap<Byte, Session>();
sessions.add(1, new Session(uur1, doc1, vak1, lok1));
sessions.add(2, new Session(uur2, doc2, vak2, lok2)); //etc
sessions.get(hour).fill(hour, teacher, classs, room);