首页 / JAVA / 不在Java中使用if语句
不在Java中使用if语句
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了不在Java中使用if语句,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1451字,纯文字阅读大概需要3分钟。
内容图文
![不在Java中使用if语句](/upload/InfoBanner/zyjiaocheng/823/1db6ac3cf98542b7b8b66fd78c56fd97.jpg)
这是一个非常奇怪且非常具体的问题.
最终我正在尝试编写一个程序转换,它接受java源代码,并将其转换为不使用它(除其他外)
>阵列
>循环
>用户定义的方法
>如果声明
这是我为自己设定的挑战,在我的老师告诉我没有使用这些东西后编写程序是不可能的.
我已经解决了大部分问题,包括函数内联和数组替换,但是我无法弄清楚如何管理if语句.
在C我会使用标签和gotos,也许?:,但Java不支持GOTO语句.
我的问题是:
给出一段代码,
if(CONDITION)
{
//More code in here
}
如何对其进行转换以使其在功能上相同,但不使用if关键字.请注意,循环结构也是不可能的.
鉴于此,创建else以及if语句会很容易.
但是我也不确定如何使用它创建循环,因为没有GOTO语句和方法是不可能的.
编辑:
请注意,也不允许切换,也不允许递归(由于无法定义用户方法而导致排除,并且递归主函数不适用于每个程序)
?:运算符不适用于所有情况. AFAIK你不能用?:调用void函数,因为它想要将一个值作为其操作的一部分.
这些条件来自IB计算机科学SL需要课程,我正在考虑HL和作为一个班级,我们嘲笑SL的“掌握”因素,其中包括’if’语句(如果其中3/15是’用户定义’具有参数和返回类型的方法)挑战实际上是在SL中进行精通测试,同时仍然生成正常运行的程序.
答案:(由bdares提供)
String result = (CONDITION)?"0":"A";
try{
Integer.parseInt(result);
//Condition is true
} catch(NumberFormatException e){
//Condition is false
}
解决方法:
if(A) {
X();
}
else{
Y();
}
可以转换为:
A?X():Y();
您可以根据需要嵌套这些,或者只是删除:的一侧,然后得到一个简单的if.条件很容易.
如果你想让它适用于void方法,这里有一种方法:
String result = A?"0":"A";
try{
Integer.parseInt(result);
X();
} catch(NumberFormatException e){
Y();
}
内容总结
以上是互联网集市为您收集整理的不在Java中使用if语句全部内容,希望文章能够帮你解决不在Java中使用if语句所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。