在java中goto是意思,关于Java中的goto语句

自学Java遇到的问题1

goto语句的问题

1.1 背景

2.1 尝试

3.1 总结

goto语句的问题

今天是我自学Java第4天,开始写博客记录学习中遇到的问题。给后来者一些借鉴,也给自己以后回过来在看这些问题提供资料。

1.1 背景

我是先自学过一段时间C++,然后隔了很长一段时间没碰代码,重新学的Java,最近学到if语句的时候,想实现一个“输入错误,重新输入!”的功能,首先想到了标签功能。因为在C语言体系中,可以用goto语句来实现的。然后我在Java中尝试了一下。

2.1 尝试

就上面的问题,我尝试了一下,代码如下:

import java.util.*;

public class IfTest03{

public static void main(String[] args){

Scanner in = new Scanner(System.in);

int weather = 0;

//输入天气

lable1:

System.out.print("请输入外面的天气 1雨天 2晴天:");

weather = in.nextInt();

if (weather != 1 && weather != 2){

System.out.println("天气输入出错,请重新输入!");

goto lable1;

}

编译结果

IfTest03.java:24: 错误: 非法的表达式开始

goto lable1;

^

IfTest03.java:24: 错误: 不是语句

goto lable1;

^

2 个错误 ## 2.2 尝试 本着不会就问度娘的原则,百度了一番,发现在Java语言中,goto是一个保留的关键字,但是不能用,也没有作用。后来看到一种说法是可以和break/continue一起使用,尝试了一下: ```javascript lable1: do { System.out.print("请输入外面的天气 1雨天 2晴天:"); weather = in.nextInt(); if (weather != 1 & weather != 2){ System.out.println("天气输入出错,请重新输入!"); break lable1; }else{ break; } }while (true); ``` 编译运行结果不理想,输入1可以,输入2逻辑出问题,但是后面的逻辑没问题。 >请输入外面的天气 1雨天 2晴天:2 天气输入出错,请重新输入! 请输入您的性别 1男生 2女生:

请输入外面的天气 1雨天 2晴天:3 //这边考虑是执行了break,直接跳过了。

天气输入出错,请重新输入!

请输入您的性别 1男生 2女生:

把“break lable1;”改成“continue lable1;”逻辑就通畅了。

//输入天气

lable1:

do {

System.out.print("请输入外面的天气 1雨天 2晴天:");

weather = in.nextInt();

if (weather != 1 & weather != 2){

System.out.println("天气输入出错,请重新输入!");

continue lable1;

}else{

break;

}

}while (true); 运行结果: >请输入外面的天气 1雨天 2晴天:3 天气输入出错,请重新输入! 请输入外面的天气 1雨天 2晴天:2 请输入您的性别 1男生 2女生:1 ## 2.3 优化 百度的过程中,发现其实可以直接用循环就可以了,也不用标签什么的,麻烦! 最后的代码如下: ```javascript //输入天气 while(true){ System.out.print("请输入外面的天气 1雨天 2晴天:"); weather = in.nextInt(); if (weather != 1 && weather != 2){ System.out.println("天气输入出错,请重新输入!"); }else{ break; } } ```

3.1 总结

不会一定要问,虽然不一定是度娘。

Java中(其他语言也差不多吧)的goto语句可以用循环代替,仔细思考其中的逻辑,其实就是:输入错误重新输入,重在一个重新的重,再跟循环的逻辑比对一下,循环不就是重复嘛。想通了。

不会的还是要多尝试

本人是初学者,最后代码虽然说是优化,但应该还有改进的地方

以上内容纯手打,码字不易,如需转载请声明出处,谢谢!

作者:LouisHaoL

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/430541.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

cJONS序列化工具解读二(数据解析)

cJSON数据解析 关于数据解析部分,其实这个解析就是个自动机,通过递归或者解析栈进行实现数据的解析 /* Utility to jump whitespace and cr/lf *///用于跳过ascii小于32的空白字符 static const char *skip(const char *in) { while (in && *in…

php备投程序,php投票小程序

PHP投票小程序,防超时,防IP限制1.[代码][PHP]代码//欢迎访问back.zhizhi123.com//参考博文http://www.zhizhi123.com/?p126set_time_limit(0);//防止超时function toupiao($i){$proxy array(182.48.116.51:8080,110.177.63.191:9999,221.10.40.238:80,…

登录注册实现(服务器数据)

1 <?xml version"1.0" encoding"utf-8"?>2 <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"3 android:layout_width"fill_parent"4 android:layout_height"fill_parent"5 …

java与android https,java – Https连接Android

我做一个猜测&#xff0c;但如果你想要一个实际的握手发生&#xff0c;你必须让Android知道你的证书。如果你想只接受无论什么&#xff0c;然后使用这个伪代码来获得你需要与Apache HTTP客户端&#xff1a;SchemeRegistry schemeRegistry new SchemeRegistry ();schemeRegistr…

84. Largest Rectangle in Histogram

/** 84. Largest Rectangle in Histogram * 2016-5-13 by Mingyang* 这里并不需要两个stack&#xff0c;只需要一个stack&#xff0c;装的是递增序列的index* 直到遇到一个递减的时候&#xff0c;弹出来&#xff0c;求一个一个的面积大小* 不过注意的是最后如果以递增的序列结尾…

收件箱java项目源码,Java物资管理系统项目源码(含数据库).zip

.mymetadata , 279.project , 1408│╠╨≥╩╣╙├╦╡├≈.doc , 99840.settings/.jsdtscope , 500.settings/org.eclipse.jdt.core.prefs , 330.settings/org.eclipse.wst.jsdt.ui.superType.container , 49.settings/org.eclipse.wst.jsdt.ui.superType.name , 6src/Applic…

小米范工具系列之二:小米范 web目录扫描器

最新版本1.1&#xff0c;下载地址&#xff1a;http://pan.baidu.com/s/1c1NDSVe 文件名scandir&#xff0c;请使用java1.8运行 小米范web目录扫描器主要功能是探测web可能存在的目录及文件&#xff0c;界面如下&#xff0c;左侧为发现的url&#xff0c;中间为浏览器&#xff0…

php中介者,PHP设计模式 - 中介者模式

【一】模式定义中介者模式(Mediator)就是用一个中介对象来封装一系列的对象交互&#xff0c;中介者使各对象不需要显式地相互引用&#xff0c;从而使其耦合松散&#xff0c;而且可以独立地改变它们之间的交互。对于中介对象而言&#xff0c;所有相互交互的对象&#xff0c;都视…

java 自定义标签 rtexprvalue,java自定义标签

三步&#xff1a;一、自定义标签实现类&#xff1a; myTags.java;二、自定义标签库文件(TLD): myTags.tld;三、一个JSP页面&#xff1a;随便写了;首先myTags.javapackage com.tags;import javax.servlet.jsp.JspException;import javax.servlet.jsp.JspWriter;import javax.ser…

Enum遇到下拉框

package com.zj.tool;public enum WeekDay {Mon("Monday",1),Tue("Tuesday",2),Wed("Wednesday",3),Thu("Thursday",4),Fri("Friday",5),Sat("Saturday",6),Sun("Sunday",7);/**定义枚举类型自己的属性…

dede plus ad js.php,织梦dedecms/plus/文件夹的功能介绍

/plus /–插件及辅助功能目录后台系统插件和辅助功能文件存放目录&#xff0c;你有什么辅助功能或者第三方开发的插件你需要用那么久需要放在这个文件夹中&#xff0c;文件夹中有dedecms自带的常用插件&#xff1a;plus 系统插件存放目录guestbook 留言板插件ad_js.php 广告…

今天觉得自己好像比较紧张

因为每天早上都是想着公司的事情&#xff0c;就怕自己做不成什么就早早的醒了&#xff0c;有时还要继续睡 转载于:https://www.cnblogs.com/bkchengzheng/p/5500224.html

vertex shader(5)

先挖个坑 &#xff0c;以后填。。。转载于:https://www.cnblogs.com/ll-10/p/5502767.html

php 固话验证,收货地址参数校验:收货人、邮编、地址、手机、固话等

收货地址参数校验&#xff1a;收货人、邮编、地址、手机、固话等.收货人&#xff1a;function checkshr() {var shr $(#shr).val();if (shr.length < 0) {$(#shrmsg).show().html(\u6536\u8d27\u4eba\u4e0d\u80fd\u4e3a\u7a7a!);return false;}if (shr.length 14) {$(#shr…

php获取悉尼时间,php在使用澳大利亚/悉尼时区时给出错误答案

为什么它说5,为什么这在技术上是正确的在Sydney,DST开始于2013-10-06 02:00:00 – 所以你跨越那个日期会失去一个小时.当你调用strtime时,它会将时间解释为悉尼时间,但返回一个Unix时间戳.如果您将第二组时间戳转换为UTC,则会得到2013-09-30 14:00:00到2013-10-06 13:00:00的范…

动画---图形图像与动画(三)Animation效果的XML实现

使用XML来定义Tween Animation 动画的XML文件在工程中res/anim目录&#xff0c;这个文件必须包含一个根元素&#xff0c;可以使<alpha><scale> <translate> <rotate>插值元素或者是把上面的元素都放入<set>元素组中&#xff0c;默认情况下&#…

java怎么输出点,Java实现控制台输出两点间距离

计算两点之间的距离然后在控制台输出&#xff0c;这个题目还是挺简单的。下面我们来看看具体代码。package com.swift;import java.util.Scanner;public class PToP {public static void main(String[] args) {Scanner scannew Scanner(System.in);System.out.println("请…

bzoj 2905 背单词

Description 给定一张包含N个单词的表&#xff0c;每个单词有个价值W。要求从中选出一个子序列使得其中的每个单词是后一个单词的子串&#xff0c;最大化子序列中W的和。 Input 第一行一个整数TEST&#xff0c;表示数据组数。 接下来TEST组数据&#xff0c;每组数据第一行为一…

php的gd库处理大的图片,PHP的gd库处理图片

gd库为图片加文字水印和图片输出$number $result[certno];//设置水印内容$file ./Uploads/certs/ . $number . .jpg;if(!is_file($file)){$src ./template/public/img/zhengshu.jpg;//定义图片地址$info getimagesize($src);//获取图片信息$type image_type_to_extension(…

dedecms模版php,dedecms专题模板怎么用

dedecms专题模板怎么用&#xff1f;DeDeCms的专题相关信息bbs上相对较少&#xff0c;之前查阅了很多资料都未找到其解决方案推荐学习&#xff1a;织梦cms无柰只有靠自己动手丰衣足食&#xff1b;在官方的版本上有这样的一段话&#xff1a;1、文章列表用ID1,ID2,ID3这样形式分开…