课后作业二

// An addition program

import javax.swing.JOptionPane; // import class JOptionPane

public class Addition {

public static void main( String args[] )

{

String firstNumber, // first string entered by user

secondNumber; // second string entered by user

int number1, // first number to add

number2, // second number to add

sum; // sum of number1 and number2

// read in first number from user as a string

firstNumber =

JOptionPane.showInputDialog( "Enter first integer" );

// read in second number from user as a string

secondNumber =

JOptionPane.showInputDialog( "Enter second integer" );

// convert numbers from type String to type int

number1 = Integer.parseInt( firstNumber );

number2 = Integer.parseInt( secondNumber );

// add the numbers

sum = number1 + number2;

// display the results

JOptionPane.showMessageDialog(

null, "The sum is " + sum, "Results",

JOptionPane.PLAIN_MESSAGE );

System.exit( 0 ); // terminate the program

}

}

 导入javax.swing.JOptionPane类:这是一个Java的Swing库类,用于显示对话框,获取用户输入,并向用户显示信息。

声明了一个名为"Addition"的公共类。

在main方法中开始执行程序。

声明了四个变量:

firstNumber:用户输入的第一个字符串。
secondNumber:用户输入的第二个字符串。
number1:要添加的第一个数字。
number2:要添加的第二个数字。
sum:number1和number2的和。
使用JOptionPane的showInputDialog方法从用户获取第一个整数,并将其存储在firstNumber字符串变量中。

使用相同的方法获取第二个整数,并将其存储在secondNumber字符串变量中。

使用Integer类的parseInt方法将字符串类型的数字转换为整数类型。

计算两个数字的和并将结果存储在sum变量中。

使用JOptionPane的showMessageDialog方法显示结果对话框,显示两个数字的和。

使用System类的exit方法终止程序。参数0表示程序正常结束。

注意:此代码没有错误或警告,并且可以正常运行。然而,对于更复杂的程序,建议添加异常处理以处理可能的输入错误,例如如果用户输入的不是一个整数。

public class EnumTest {

 

public static void main(String[] args) {

Size s=Size.SMALL;

Size t=Size.LARGE;

System.out.println(s==t); //

System.out.println(s.getClass().isPrimitive());

Size u=Size.valueOf("SMALL");

System.out.println(s==u); //true

for(Size value:Size.values()){

System.out.println(value);

}

}

}

enum Size{SMALL,MEDIUM,LARGE};

public class EnumTest {:定义了一个名为EnumTest的公开类。

public static void main(String[] args) {:定义主函数,是程序的入口点。
Size s=Size.SMALL;:创建一个Size枚举类型的变量s,并赋值为Size.SMALL。
Size t=Size.LARGE;:创建另一个Size枚举类型的变量t,并赋值为Size.LARGE。
System.out.println(s==t);:输出s和t的比较结果。因为s和t分别赋值为Size.SMALL和Size.LARGE,它们是不同的枚举常量,所以输出结果为false。
System.out.println(s.getClass().isPrimitive());:输出s的类是否是基本类型的结果。因为枚举类型在Java中不是基本类型,所以输出结果为false。
Size u=Size.valueOf("SMALL");:使用valueOf方法将字符串"SMALL"转换为对应的枚举常量,并赋值给变量u。
System.out.println(s==u);:输出s和u的比较结果。因为s和u都指向同一个枚举常量Size.SMALL,所以输出结果为true。
for(Size value:Size.values()){:使用增强的for循环遍历所有的枚举值。
System.out.println(value);:输出每一个枚举值。
enum Size{SMALL,MEDIUM,LARGE};:定义了一个名为Size的枚举类型,包含三个枚举常量:SMALL、MEDIUM和LARGE。
这段代码的主要目的是通过示例演示Java枚举的基本使用,包括创建枚举变量、比较枚举值、将字符串转换为枚举值以及遍历所有枚举值等。

/**
@version 1.10 2004-02-10
@author Cay Horstmann
*/

import java.util.*;

public class InputTest
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);

// get first input
System.out.print("What is your name? ");
String name = in.nextLine();

// get second input
System.out.print("How old are you? ");
int age = in.nextInt();
/* int i;
String value="100";
i=Integer.parseInt(value);
i=200;
String s=String.valueOf(i);*/
// display output on console
System.out.println("Hello, " + name + ". Next year, you'll be " + (age + 1));
}
}

首先,程序导入了 java.util.* 包,该包包含了Java的许多有用的类,例如 Scanner。
定义了一个名为 InputTest 的公共类。
在 InputTest 类中定义了 main 方法,该方法是Java程序的入口点。
创建了一个新的 Scanner 对象,它用于读取从控制台输入的数据。
使用 System.out.print 方法向用户询问名字,并使用 in.nextLine 方法读取用户输入的名字,并将其存储在 name 变量中。
同样地,使用 System.out.print 方法向用户询问年龄,并使用 in.nextInt 方法读取用户输入的年龄,并将其存储在 age 变量中。
有一段被注释掉的代码,它将一个字符串转化为整数,然后再将该整数转化为字符串。这部分代码当前对程序没有任何影响。
最后,使用 System.out.println 方法打印出一条问候信息,这条信息包含了用户输入的名字和年龄(加1)。

这个程序在控制台上运行时,会首先询问用户的名字和年龄,然后根据输入的信息向用户打招呼。例如,如果用户输入的名字是 "Alice",年龄是 "25",那么程序会输出 "Hello, Alice. Next year, you'll be 26"。

public class RandomStr
{
public static void main(String[] args)
{
//定义一个空字符串
String result = "";
//进行6次循环
for(int i = 0 ; i < 6 ; i ++)
{
//生成一个97~122的int型的整数
int intVal = (int)(Math.random() * 26 + 97);
//将intValue强制转换为char后连接到result后面
result = result + (char)intVal;
}
//输出随机字符串
System.out.println(result);
}
}

定义了一个名为RandomStr的公共类。
在类内,定义了主函数main,它是Java程序的入口点。
在主函数中,首先定义了一个空字符串result,它将用于存储生成的随机字符串。
使用for循环来执行6次迭代。
在每次迭代中:

a. 使用Math.random()生成一个0到1之间的随机数。
b. 将该随机数乘以26,然后加上97,从而得到一个97到122之间的随机整数。这是因为字符'a'在ASCII表中的值为97,字符'z'在ASCII表中的值为122。
c. 将得到的随机整数强制转换为char类型,然后将其连接到result字符串的末尾。
6. 在循环结束后,使用System.out.println输出生成的随机字符串。
所以,当你运行这段代码时,它将输出一个长度为6的随机小写字母字符串,例如:"rtgbfe"或"vasbnm"。

posted @ 2023-09-15 12:05  liuxuechao  阅读(2)  评论(0编辑  收藏  举报