小编ars*_*jii的帖子

Java如何确定三元条件运算符表达式的类型?

有谁能解释一下?

public class Test {
    public static void main(String[] args) {
        char c = 'A';
        int i = 0;
        boolean b = true;

        System.out.println(b ? c : i);
        System.out.println(b ? c : (char)i);

        System.out.println(b ? c : 0);
        System.out.println(b ? c : (char)0);
    }
}
Run Code Online (Sandbox Code Playgroud)

输出:

65
A
A
A.

从我站立的地方看起来确实很奇怪.我原以为只A打印出来.而且:怎么来的,当我取代0i输出的变化?输出似乎对所有值都相同i,而不仅仅是0.

java ternary-operator

3
推荐指数
1
解决办法
184
查看次数

Java - 在数组中查找高和低数字

我试图在数组中找到高低数字,但我不确定为什么我的代码无法正常工作.它给了我0和56的输出.我理解为什么它给0,但56来自哪里?

package test;

public class Test {

    public static void main(String[] args) {
        int[] numbs = { '2', '4', '2', '8', '4', '2', '5'};

        int count = 0;
        int low = 0;
        int high = 0;

        while(count < numbs.length)
        {
             if(numbs[count]< low) {
                low = numbs[count];
            }

            if(numbs[count]> high) {
                high = numbs[count];
            }

            count++;   
        }

        System.out.println(low); 
        System.out.println(high);           

    }
}
Run Code Online (Sandbox Code Playgroud)

java

3
推荐指数
1
解决办法
6864
查看次数

了解浮点和无限循环

我有这个代码:

while (x < 10.0) {
    x += y;
}
Run Code Online (Sandbox Code Playgroud)

如果xy是浮点数,显然如果你添加它们,循环将无限继续.我不明白它怎么会通过10.似乎不可能不通过十,但它不是根据我的教科书.

这是为什么?是因为浮点数会发生舍入吗?或者我错过了什么?

编辑:顺便说一句x,y是严格积极的

java loops infinite

3
推荐指数
1
解决办法
115
查看次数

Python打印功能在解释器上获得意外输出?

我在名为seta.py的文件中有以下内容:

def print_name():
    print "hello"
Run Code Online (Sandbox Code Playgroud)

我正在从口译员那里做以下事情:

import seta
Run Code Online (Sandbox Code Playgroud)

然后

seta.print_name
Run Code Online (Sandbox Code Playgroud)

我希望输出是"你好",但它如下:

<function print_name at 0x7faffa1585f0>

我究竟做错了什么?

python

3
推荐指数
1
解决办法
110
查看次数

使用数组作为函数参数:"not a statement"(Java)

我有一个String[]参数的函数.怎么可能这个:

String[] string = {"string1", "string2"};
myFunction(string);
Run Code Online (Sandbox Code Playgroud)

工作,而这:

myFunction({"string1", "string2"});
Run Code Online (Sandbox Code Playgroud)

不?它给了我错误:

Illegal start of expression
not a statement
";" expected

java string

3
推荐指数
1
解决办法
103
查看次数

Java构造函数链接

嗨,我刚学习Java中的构造函数链接,并有一些问题......

  1. 首先,有人可以解释我何时需要使用它?在我的头脑中,我真的想不到一个情况.

  2. 在这个例子中,在没有参数的构造函数中,我调用另一个构造函数.如何访问这个新的"James Bond"对象以备将来使用?

    import java.util.*;
    
    class Employee
    {   
        private String name;
        private double salary;
    
        public Employee()
        {
            this("James Bond", 34000);
        }
    
        public Employee(String n, double s)
        {
            name = n;
            salary = s;
        }
    
        public String getName()
        {
            return name;
        }
    
        public double getSalary()
        {
            return salary;
        }
    
        public static void main(String[] args)
        {
            Employee a = new Employee();
        }
    }
    
    Run Code Online (Sandbox Code Playgroud)

java constructor-chaining

3
推荐指数
1
解决办法
2万
查看次数

带有main方法的内部类不能编译

abstract class Manager {

    static void test() {
        System.out.println(12);
    }

    class Manager1 {
        public static void main(String args[]) {
            System.out.println(Manager.test());
        }
     }
}
Run Code Online (Sandbox Code Playgroud)

它产生编译时错误.抽象类可以staticvoid类型的方法吗?

java

3
推荐指数
1
解决办法
94
查看次数

从密钥列表中获取Python字典中的值

如果我有一本字典

d = {'a':1, 'b':2 , 'c': 3}
Run Code Online (Sandbox Code Playgroud)

d['a']d.get('a')我得到1.

如何从键列表中获取字典中的值?

就像是

d[['a','b']]
Run Code Online (Sandbox Code Playgroud)

python dictionary

3
推荐指数
2
解决办法
123
查看次数

HashMap值计算没有迭代

我有下面的地图,我想用费用地图中的每个值除以率而不迭代每个条目并构建新的地图.这可能吗?

final String rate="2";
Map<String,BigDecimal> charges=new HashMap<String,BigDecimal>();
charges.put("tax", new BigDecimal(22));
charges.put("vat", new BigDecimal(200));
charges.put("gross", new BigDecimal(100));
charges.put("principal", new BigDecimal(150));
Run Code Online (Sandbox Code Playgroud)

分裂后

charges.put("tax", new BigDecimal(11));
charges.put("vat", new BigDecimal(100));
charges.put("gross", new BigDecimal(50));
charges.put("principal", new BigDecimal(75));
Run Code Online (Sandbox Code Playgroud)

java

3
推荐指数
1
解决办法
607
查看次数

Autoboxing - 这两条线之间的差异?

我想知道这两者之间的区别:

Integer I = 30;  // is it autoboxing?

Integer I = new Integer(30);  // I know it is autoboxing
Run Code Online (Sandbox Code Playgroud)

java autoboxing

3
推荐指数
1
解决办法
159
查看次数