练习 !
Code Gym 任务 —— 整数类型转换联系
—— Java 基础,Level 10, Lesson 8。
任务 1 —— 关于整数类型转换
正确安排强制转换运算符以获得所需的结果:d > 0
int a = 0;
int b = (byte) a + 46;
byte c = (byte) (a*b);
double f = (char) 1234.15;
long d = (short) (a + f / c + b);
答:
package zh.codegym.task.task10.task1001;
/*
任务 1 - 关于整数类型转换
*/
public class Solution {
public static void main(String[] args) {
int a = 0;
int b = a + 46;
byte c = (byte) (a * b);
double f = 1234.15;
long d = (long) (a + f / c + b);
System.out.println(d);
}
}
任务 2 —— 关于整数类型转换
正确安排强制转换运算符以获得所需的结果:d = 3.765
int a = 15;
int b = 4;
float c = a / b;
double d = a * 1e-3 + c;
答:
package zh.codegym.task.task10.task1002;
/*
任务 2 - 关于整数类型转换
*/
public class Solution {
public static void main(String[] args) {
int a = 15;
int b = 4;
float c = (float)a / b;
double d = a * 1e-3 + c;
System.out.println(d);
}
}
任务 3 —— 关于整数类型转换
添加一个类型转换以获得如下答案:b = 0
float f = (float)128.50;
int i = (int)f;
int b = (int)(i + f);
答:
package zh.codegym.task.task10.task1003;
/*
任务 3 - 关于整数类型转换
*/
public class Solution {
public static void main(String[] args) {
float f = (float) 128.50;
int i = (int) f;
int b = (int) ((byte)i + f);
System.out.println(b);
}
}
任务 4 —— 关于整数类型转换
添加一个类型转换以获得如下答案:nine = 9
short number = 9;
char zero = ‘0’;
int nine = (zero + number);
答:
package zh.codegym.task.task10.task1004;
/*
任务 4 - 关于整数类型转换
*/
public class Solution {
public static void main(String[] args) {
short number = 9;
char zero = '0';
int nine = ((int)zero + number);
System.out.println((char)nine);
}
}
任务 5 —— 关于整数类型转换
正确安排强制转换运算符以获得如下答案:c = 256
int a = (byte)44;
int b = (byte)300;
short c = (byte)(b - a);
答:
package zh.codegym.task.task10.task1005;
/*
任务 5 - 关于整数类型转换
*/
public class Solution {
public static void main(String[] args) {
int a = (short) 44;
int b = (short) 300;
short c = (short) (b - a);
System.out.println(c);
}
}
任务 6 —— 关于整数类型转换
删除不必要的运算符以获得正确的答案:结果:1000.0
double d = (short) 2.50256e2d;
char c = (short) ‘d’;
short s = (short) 2.22;
int i = (short) 150000;
float f = (short) 0.50f;
double result = f + (i / c) - (d * s) - 500e-3;
答:
package zh.codegym.task.task10.task1006;
/*
任务 6 - 关于整数类型转换
*/
public class Solution {
public static void main(String[] args) {
double d = (short) 2.50256e2d;
char c = (short) 'd';
short s = (short) 2.22;
int i = 150000;
float f = 0.50f;
double result = f + (i / c) - (d * s) - 500e-3;
System.out.println("结果: " + result);
}
}
任务 7 —— 关于整数类型转换
删除不必要的运算符,以获得正确的答案:1234567
long l = (byte)1234_564_890L;
int x = (byte)0b1000_1100_1010;
double m = (byte)110_987_654_6299.123_34;
float f = (byte)l++ + 10 + ++x - (float)m;
l = (long) f / 1000;
答:
package zh.codegym.task.task10.task1007;
/*
任务 7 - 关于整数类型转换
*/
public class Solution {
public static void main(String[] args) {
long l = 1234_564_890L;
int x = 0b1000_1100_1010;
double m = (byte) 110_987_654_6299.123_34;
float f = l++ + 10 + ++x - (float) m;
l = (long) f / 1000;
System.out.println(l);
}
}
Code Gym 任务 —— 目标 1 的最终任务
—— Java 基础,Level 10, Lesson 11。
任务 1 —— 正确答案:d = 2.941
添加一个类型转换以获得如下答案:d = 2.941
示例输出:
2.9411764705882355
答:
package zh.codegym.task.task10.task1008;
/*
正确答案:d = 2.941
*/
public class Solution {
public static void main(String[] args) {
int a = 50;
int b = 17;
double d = (double)a / b;
System.out.println(d);
}
}
任务 2 —— 正确答案:d = 5.5
添加一个类型转换以获得如下答案:d = 5.5
答:
package zh.codegym.task.task10.task1009;
/*
正确答案:d = 5.5
*/
public class Solution {
public static void main(String[] args) {
int a = 5;
int b = 4;
int c = 3;
int e = 2;
double d = a + b / c / (double) e;
System.out.println(d);
}
}
任务 3 —— 正确答案:d = 1.0
添加一个类型转换以获得如下答案:d = 1.0
答:
package zh.codegym.task.task10.task1010;
/*
正确答案:d = 1.0
*/
public class Solution {
public static void main(String[] args) {
int a = 257;
int b = 4;
int c = 3;
int e = 2;
double d = (byte)a + b / c / e;
System.out.println(d);
}
}
任务 4 —— 高薪
按如下模式显示***“我不想学习 Java。我要高薪***”15 次。
答:
package zh.codegym.task.task10.task1011;
/*
高薪
*/
public class Solution {
public static void main(String[] args) {
String s = "我不想学习 Java。我要高薪";
for (int i = 0; i < 15; i++) {
System.out.println(s);
s = s.substring(1);
}
//在此编写你的代码
}
}
任务 5 —— 字母数
从键盘输入 10 个字符串,并计算其中的不同字母数(针对 26 个小写英文字母)。在屏幕上按字母顺序显示结果。
答:
package zh.codegym.task.task10.task1012;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
/*
字母数
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
// 字母
String abc = "abcdefghijklmnopqrstuvwxyz";
char[] abcArray = abc.toCharArray();
ArrayList<Character> alphabet = new ArrayList<>();
for (char letter : abcArray) {
alphabet.add(letter);
}
// 读取字符串
ArrayList<String> list = new ArrayList<>();
for (int i = 0; i < 10; i++) {
String s = reader.readLine();
list.add(s.toLowerCase());
}
// 在此编写你的代码
int[] letterCount= new int[26];
for (int i = 0; i < 25; i++) {
letterCount[i] =0;
}
int[] count = new int[alphabet.size()];
for (String s : list) {
for (char c : s.toCharArray()) {
int index = alphabet.indexOf(c);
if (index < 0) {
continue;
}
count[index]++;
}
}
for (int i = 0; i < alphabet.size(); i++) {
char c = alphabet.get(i);
System.out.println(c + " " + count[i]);
}
}
}
任务 6 —— Human 类构造函数
写出包含 6 个字段的 Human 类。
想一想,实施 10 个不同的构造函数。
每个构造函数都应该有意义。
答:
package zh.codegym.task.task10.task1013;
/*
Human 类构造函数
*/
public class Solution {
public static void main(String[] args) {
}
public static class Human {
private String name;
private boolean gender;
private int age;
private int score;
private String phone;
private String id;
// 在此写变量和构造函数
public Human(String name, boolean gender, int age, int score, String phone, String id) {
this.name = name;
this.gender = gender;
this.age = age;
this.score = score;
this.phone = phone;
this.id = id;
}
public Human