gpt4 book ai didi

java - 对同一件事执行多个 if 语句的更简单方法

转载 作者:行者123 更新时间:2023-12-01 16:52:44 25 4
gpt4 key购买 nike

对,所以我的问题是我有 18 个微调器,其中包含 43 个选项供用户选择。我希望每个选项都能更改不同页面上的链接,以便用户查看有关该选项的 pdf。我已经有了共享的偏好来共享选择,我现在正在实现我的 if/else if 语句,但如果我确实使用 if/else 语句,我最终会为每个微调器得到 43 个,然后为每个微调器得到 43 个,最终我需要实现 700 多个 if 语句,并且必须有一种我不知道的更简单的方法来实现我的想法。这是一个代码示例:

if (spinnerValue == 1)
{
TextView textView =(TextView)findViewById(R.id.textViewWeb1);
textView.setClickable(true);
textView.setMovementMethod(LinkMovementMethod.getInstance());
String text = "<a href='http://qualifications.pearson.com/content/dam/pdf/BTEC-Nationals/Information-Technology/2010/Specification/Unit-1-Communication-and-Employability-Skills-for-IT.pdf'>Unit 1: Communication and Employability Skills for IT</a>";
textView.setText(Html.fromHtml(text));
}
else if (spinnerValue == 2){
TextView textView =(TextView)findViewById(R.id.textViewWeb1);
textView.setClickable(true);
textView.setMovementMethod(LinkMovementMethod.getInstance());
String text = "<a href='http://qualifications.pearson.com/content/dam/pdf/BTEC-Nationals/Information-Technology/2010/Specification/Unit-2-Computer-Systems.pdf'>Unit 2: Computer Systems</a>";
textView.setText(Html.fromHtml(text));
}
else if (spinnerValue == 3){
TextView textView =(TextView)findViewById(R.id.textViewWeb1);
textView.setClickable(true);
textView.setMovementMethod(LinkMovementMethod.getInstance());
String text = "<a href='http://qualifications.pearson.com/content/dam/pdf/BTEC-Nationals/Information-Technology/2010/Specification/Unit-3-Information-Systems.pdf'>Unit 3: Information Systems</a>";
textView.setText(Html.fromHtml(text));
}

因此,最后将有 43 个 if (spinnervalue == 1 through 43) 和 18 个 spinnervalue。我对 java 和 android studio 非常陌生,因此非常感谢任何帮助或指导以及对此的解释。

编辑:我的 if 语句可以工作, switch 也可以,但我仍然需要实现 43 个 if/switch 语句 18 次。有什么方法可以让我按照以下方式做一些事情 - if (spinnervalue 1 through 18 ==1) - then 这将允许我一次编写 43 个案例并将其应用于所有 spinnervalues (1 - 18)

最佳答案

这是我对此的第一个想法:

String[] fileNames = new String[] {
//Put your filenames here in order
}

然后在您当前的代码中:

if(spinnerValue<=fileNames.length) { //Make sure the value is valid
TextView textView =(TextView)findViewById(R.id.textViewWeb1);
textView.setClickable(true);
textView.setMovementMethod(LinkMovementMethod.getInstance());
String text = "<a href='http://qualifications.pearson.com/content/dam/pdf/BTEC-Nationals/Information-Technology/2010/Specification/"+fileNames[spinnerValue-1]+".pdf'>"+fileNames[spinnerValue-1].replaceAll("-"," ")+"</a>";
textView.setText(Html.fromHtml(text));
}

不确定这对您来说是否是最有效的方法,但请尝试考虑如何动态设置 html。

关于java - 对同一件事执行多个 if 语句的更简单方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36696379/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com