大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
String firstPage=" 欢迎使用我行我素购物管理系统 \n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n 1、登 录 系统 \n 2、更 改 管 理 员 密 码 \n 3、退 出 \n"* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n";
创新互联公司专业为企业提供尉氏网站建设、尉氏做网站、尉氏网站设计、尉氏网站制作等企业网站建设、网页设计与制作、尉氏企业网站模板建站服务,10多年尉氏做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
不同页定义一个不同的String类型的变量用于打印 System(firstPage);
楼下说的那样记录上一级的可以 但是不能记录打印的字符串了 需要单门用一个变量来判断 首先你需要确认对每个页面有一个不同的值 比如String page来辨别你到了那一页 比如你在登陆页 page="login" 然后你就可以判断
if(page.equals("login"){
方法体
如果你在这 这个页面再点击了 2 更改密码的话 page再赋值
page="exchangePassword"
}下面可以加各个判断各个页面 并
if(page.equals("exchangePassword")
{
点击了返回 page再赋值回 login就好了
}
这样你需要给每个页面就定义一个值用于你自己判断 就行了
把System.out.println("有以下帮助");和之后的代码添加到for循环中,注意要这么写
loop:for() PS: "loop:"不可省略
然后在你说的位置添加 continue loop;
下面注意,要添加退出(必须)
在"人工服务请按0"后添加:
System.out.println("退出请按3");
在"if(a==1)"前面添加:
if(a==3)
{
System.exit(0);
}
提高功能:
if(a==3)
{
System.out.println("确定退出吗,按0退出,按1返回");
int b = input.nextInt();
if(b==0)
{
System.out.println("欢迎再次使用,再见");
System.exit(0);
}
else if(b==1)
{
continue loop;
}
}
看这里:
public String walk() //注意这里的返回类型是String
{
System.out.print("你好!");
return "哈喽"; //注意这里这个return 如果不写就会报错!
}
原因就是因为上面 的返回类型必须是String型
如果写的是void意思就是不需要返回类型。所以就没必要写return 了
如果方法上面写了某种返回类型 就必须写return后面跟 相应的类型值
是的,这段代码中的递归调用只会返回第一次的返回值。如果你想得到800*的结果,可以修改代码,使得第二次递归调用的结果被正确地返回。具体地,你可以在第二次递归调用结束之后,将结果返回到上一层递归调用,并在第一次递归调用结束之后将结果返回。修改后的代码如下:
String deal(String s1, String s2) { if(s1 != null) { if(contact(s1.charAt(s1.length() - 1)) == 1) {
s1 += s2; return s1;
} else {
s1 = s1.substring(0, s1.length() - 1);
s1 = deal(s1, s2); // 递归调用并将返回值赋值给s1
return s1; // 将结果返回到上一层递归调用
}
} return s1;
}
int contact(char ch) { if(Character.isDigit(ch) || ch == '*' || ch == '.' || ch == '-') return 1; if(ch == '+' || ch == '/') return 2; return 0;
}String str = deal("800-", "*"); // 返回的结果为800*