2024-03-23 16:14:02 | 我爱编程网
这是一个,求解问题。
从字符串s中,求出其中包含有多少个sToFind。
按照上面的例子,
就是在sunjavahpjavahjsdhjjavadsjhjjavadsjjava中,
计算含有多少个java子串。
count负责记录一共有多少个子串。
index负责记录每一次寻找开始时,字符串开始的位置。
循环外面的s = s.substring(index + sToFind.length());
是使得字符串s从java开始寻找(即一开始就过滤了最前面的sun这个子串)。
然后每当循环一次(即找到一个java子串),
s就从找到的java子串后第一个字符开始继续寻找。
如:当第一次寻找到java得时候,s就变成了
hpjavahjsdhjjavadsjhjjavadsjjava
然后再一次寻找到java得时候,s就变成了
hjsdhjjavadsjhjjavadsjjava。
最后,输出一共含有多少个java,即输出count
i是从零开始的。
switch分支结构用于多条件选择,虽然在多条件选择的情况下,也可以使用if...else...结构来实现,但是使用开关语句会使程序更为精炼、清晰。开关语句得格式为:
switch(条件表达式)
{
case 常量表达式1:
语句1 ;
break ;
case 常量表达式2:
语句2 ;
break ;
//......
case 常量表达式n:
语句n ;
break ;
default:
//
break
}
开关表达式首先计算出条件表达式的值,如果其值等于某个常量表达式,则执行该常量表达式后的语句,如果其值与所有的常量表达式的值不相等,则执行defualt后的语句。
在switch语句中,你通常在每一种case情况后都应使用break语句,否则,第一个相等情况后面所有的语句都会被执行,这种情况叫做落空。你可以试着分别加上去和去掉break语句来执行下面的例子:
class Switch Test
public static void main(String args[])
throws java.io.IOException
char a;
System.out.println("Enter a number from 1--3:");
a=(char)System.in.read();
switch(a)
case'1':System.out.println("win a Car!");break;
case'2':System.out.println("picked the goat");break
case'3':System.out.println("get to keep your 100");
break;
default:System.out.println("entry");我爱编程网
在代码中加break语句后,你应明确知道程序将会发生的变化,并要确认程序没有转移到你不想执行的代码上。
掌握了以上这些基本语句之后,你可以写更加实际点的程序了,下面这个程序计算从终端输入的数字和字符的数量。
class SwitchTest
public static void main (String args[])
throws java.io.IOException
int numberOfDigits=0,numberOfSpaces=0,numberOfOthers=0;
char c;
while((c=(char)System.in.read())!='')
switch(c)
case'0':
case'1':
...
...
case'8':
case'9':numberOfDigits++;break;
case' ':numberOfSpaces++;break;
default:numberOfOthers++;break;
System.out.println(":");
System.out.println("Number of digits="+numberOfDigits+"");
System.out.println("Number of spaces="+numberOfSpaces+"");
System.out.println("Number of others="+numberOfOthers+"");
代码的while循环从键盘读入字符直至输入一个回车符,循环内部的switch语句先把它和数字比较,当发现相等时,它就使对应的统计变量的值加1,然后break语句结束switch语句,程序回到等待键盘输入的状态。程序中,在default语句中的break是不必要的,不过加上它可以使程序风格保持一致。
我爱编程网(https://www.52biancheng.com)小编还为大家带来关于JAVA程序的注释和运行结果的相关内容。
1、单行(single-line)--短注释://……
单独行注释:在代码中单起一行注释,
注释前最好有一行空行,并与其后的代码具有一样的缩进层级。如果单行无法完成,则应采用块注释。
注释格式:/*
注释内容
*/
行头注释:在代码行的开头进行注释。主要为了使该行代码失去意义。
注释格式://
注释内容
行尾注释:尾端(trailing)--极短的注释,在代码行的行尾进行注释。一般与代码行后空8(至少4)个格,所有注释必须对齐。
注释格式:代码
+
8(至少4)个空格
+
//
注释内容
2、块(block)--块注释:/*……*/
注释若干行,通常用于提供文件、方法、数据结构等的意义与用途的说明,或者算法的描述。一般位于一个文件或者一个方法的前面,起到引导的作用,也可以根据需要放在合适的位置。这种域注释不会出现在html报告中。注释格式通常写成:
/*
*
注释内容
*/
3、文档注释:/**……*/
注释若干行,并写入javadoc文档。每个文档注释都会被置于注释定界符
/**......*/
...
关于JAVA程序的注释和运行结果1、单行(single-line)--短注释://……单独行注释:在代码中单起一行注释,注释前最好有一行空行,并与其后的代码具有一样的缩进层级。如果单行无法完成,则应采用块注释。注释格式:/*注释内容*/行头注释:在代码行的开头进行注释。主要为了使该行代码失去意义。注释格式://注释内容行尾注释:尾端(trailing)--
简述java语言的运行机制简单来说Java程序的运行机制编写 、编译 、运行 三个步骤。运行机制主要是指编译 、运行的过程1、编译Java编译器对源文件进行错误排查的过程,编译后将生成后缀名为.class的字节码文件。好让JVM(java虚拟机)里的解释器可以正常读取。2、运行三步 代码的装入、代码的校验和代码的执行2.1、 代码
java求以下程序的运行结果第一题是s=2+4+6=12考察do……while循环体和continue第二题是求数组中3的倍数的和,30+60+90=180第三题是考察try……catch语句的运用。定义了5个长度的数组,却在第十一个位置添加元素,导致数组越界。因此输出:“超出数组范围!*****异常处理结束!”以下Java程序的运行结果是()。C.运行正常,没
JAVA选择题,解释一下每个选项的对错原因。运行结果题解释一下运行的过程方法。最好详细点,不多的2(1)内部类不能放置static变量,故选C(2)解析:A选项:和接口有关的匿名类不能是abstractclass,因为其不能实例化;B选项:有且仅有实现一个interfaceD选项:static变量属于类3(1)类似一个覆盖override,当然会实现new对象里的method
java程序运行结果是什么?classAnimal{publicAnimal(){super();System.out.println("我是动物");}}classCatextendsAnimal{Cat(){super();System.out.println("我是猫");}}classPersiaCatextendsCat{publicPersiaCat(){super();Syst
程序先后运行顺序是什么?求详细解释Javajava在编译class时,会自动生成一个init方法和clinit方法。clinit方法在第一次加载该类时调用,而且只调用一次。init在创造这个class的实例时调用,实例化一次调用一次。clinit方法中其实就是初始化一些静态变量,执行static块等,初始化和执行的顺序完全按照你代码顺序来,也就是先初始化x为0,然后+7,在模4,最后x=
java习题运行结果--、++运算不会立即改变变量值,所以x--==2是true,y++==2也为true;所以x--==2&&y++==2为true;此后x变为1,y变为3;if条件语句的或“||”,a||b,若a=true,则无需判断b,所以z++==2其实是没有执行的,所以z=2;最后一行System.out.println("x="+x+",
JAVA题,分析程序运行结果.publicclassHelloWorld{publicstaticvoidmain(Stringargs[]){inti=0;输出结果:HelloWorld!Hello!HELLOWORLD!!出现数组异常啦!。。。。。出现数组异常啦!分析如下:因为数组的长度只有3,当i++变为3的时候,数组greetings[3]是没有数据的,
2025-02-01 20:24:39
2025-02-12 03:21:37
2025-02-10 15:19:48
2025-01-28 17:58:32
2024-11-22 05:08:01
2024-09-10 08:50:00