以下哪项是类实例化的语句?A varName ClassName=new varName();B ClassName varName=new ClassName(new ClassName);C ClassName varName=ClassName();D ClassName varName=new ClassName();
他的回答:
D (正确)
正确答案:
D
类名 变量名= new 类名(); 由此可知B、C错误
ClassnName是类名,varName是变量名,类名在变量名之前,故选择D。
HashSet内部使用Map保存数据,即将HashSet的数据作为Map的key值保存,这也是HashSet中元素不能重复的原因。而Map中保存key值前,会去判断当前Map中是否含有该key对象,内部是先通过key的hashCode,确定有相同的hashCode之后,再通过equals方法判断是否相同。
ClassnName是类名,varName是变量名,类名在变量名之前,故选择D。
以下叙述正确的是A 实例方法可直接调用超类的实例方法B 实例方法可直接调用超类的类方法、C 实例方法可直接调用子类的实例方法D 实例方法可直接调用本类的实例方法
他的回答:
D (正确)
正确答案:
D
Java 语言用以下哪个类来把基本类型数据封装为对象()A 包装B ClassC MathD Object
他的回答:
D (错误)
正确答案:
A
变量a是一个64位有符号的整数,初始值用16进制表示为:0Xf000000000000000; 变量b是一个64位有符号的整数,初始值用16进制表示为:0x7FFFFFFFFFFFFFFF。 则a-b的结果用10进制表示为多少?()A 1B -(2^62+2^61+2^60+1)C 2^62+2^61+2^60+1D 2^59+(2^55+2^54+…+2^2+2^1+2^0)
他的回答:
C (正确)
正确答案:
C
参考答案:
计算机中进行符号数运算时,会用补码表示,符号位和数字位一起参与运算。a-b实际转换为[a-b]补=[a]补+[-b]补
转换了下[a]补=100100000000000000000000000000000000000000000000000000000000000000
[-b]补=100000000000000000000000000000000000000000000000000000000000000001
[a-b]补=1000100000000000000000000000000000000000000000000000000000000000001(65位,符号位溢出)
然后将溢出的符号位补上为100100000000000000000000000000000000000000000000000000000000000001
转换为原码1111000000000000000000000000000000000000000000000000000000000001
HashSet子类依靠()方法区分重复元素。A toString(),equals()B clone(),equals()C hashCode(),equals()D getClass(),clone()
他的回答:
C (正确)
正确答案:
C
HashSet子类依靠()方法区分重复元素。A toString(),equals()B clone(),equals()C hashCode(),equals()D getClass(),clone()
他的回答:
C (正确)
正确答案:
C
HashSet内部使用Map保存数据,即将HashSet的数据作为Map的key值保存,这也是HashSet中元素不能重复的原因。而Map中保存key值前,会去判断当前Map中是否含有该key对象,内部是先通过key的hashCode,确定有相同的hashCode之后,再通过equals方法判断是否相同。
【iNOC产品部-杨辉三角的变形】
1
1 1 1
1 2 3 2 1
1 3 6 7 6 3 1
1 4 10 16 19 16 10 4 1
以上三角形的数阵,第一行只有一个数1,以下每行的每个数,是恰好是它上面的数,左上角数到右上角的数,3个数之和(如果不存在某个数,认为该数就是0)。
求第n行第一个偶数出现的位置。如果没有偶数,则输出-1。例如输入3,则输出2,输入4则输出3。
输入n(n <= 1000000000)
import java.util.Scanner;
/**
* Created by JiaLe on 2021/5/6 19:31
*/
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()) {
int n = scanner.nextInt();
int res = helper(n);
System.out.println(res);
}
scanner.close();
}
public static int helper(int n) {
int ans = 0;
if(n <= 2)
{
ans = -1;
} else {
if(n % 4 == 0) ans = 3;
if(n % 4 == 1) ans = 2;
if(n % 4 == 2) ans = 4;
if(n % 4 == 3) ans = 2;
}
return ans;
}
}
【超长正整数相加】 请设计一个算法完成两个超长正整数的加法。
接口说明
/*
请设计一个算法完成两个超长正整数的加法。
输入参数:
String addend:加数
String augend:被加数
返回值:加法结果
*/
public String AddLongInteger(String addend, String augend)
{
/*在这里实现功能*/
return null;
}
import javax.swing.plaf.IconUIResource;
import java.util.Scanner;
/**
* Created by JiaLe on 2021/5/6 20:03
*/
public class Main1 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while(scanner.hasNext()) {
String addend = scanner.nextLine();
String augend = scanner.nextLine();
System.out.println(AddLongInteger(addend,augend));
}
}
public static String AddLongInteger(String addend, String augend) {
char[] a1 = addend.toCharArray();
char[] a2 = augend.toCharArray();
int len = Math.max(addend.length(),augend.length()) + 1;
char[] b1 = new char[a1.length];
char[] b2 = new char[a2.length];
for (int i = 0; i < a1.length; i++) {
b1[i]= a1[a1.length - 1 - i];
}
for (int i = 0; i < a2.length; i++) {
b2[i] = a2[a2.length - 1 - i];
}
char[] c1 = new char[len];
for (int i = 0; i < c1.length; i++) {
c1[i] = '0';
}
for (int i = 0; i < len - 1; i++) {
int count=0;
if(b1.length-1-i>=0 && b2.length-1-i>=0){
count=b1[i]-'0'+b2[i]-'0';
}
else if(b1.length-1-i>=0 && b2.length-1-i<0){
count=b1[i]-'0';
}
else if(b1.length-1-i<0 && b2.length-1-i>=0){
count=b2[i]-'0';
}
int value=c1[i]-'0'+count;
c1[i]=(char)(value%10+'0');
c1[i+1]+=value/10;
}
while (c1[len - 1] == '0') {
len--;
}
char[] c2=new char[len];
for(int i = 0; i < len; i++){
c2[len - 1 - i] = c1[i];
}
String str = new String(c2);
return str;
}
}