小编Mic*_*ael的帖子

关于在 Java 中使用构造函数和方法的简单问题以及为什么构造函数不起作用

我刚刚开始学习 OOP、构造函数和类方法。我的问题是,当我的构造函数被调用并且给定的值不起作用时。将创建一个对象,但它创建的值似乎不起作用或“应用”。也许代码会更好地解释它。我的圈子课是这样的:

public class MyCircle {
    double radius;
    
    public MyCircle() {
        
    }
    public MyCircle(double radius) {
        

    }
    
    final double pi = 3.14159;
    public double getRadius() {
        return radius;
    }
    
    public double getCircumference() {
        return radius*pi;
    }
    
    public double getArea() {
        return radius*radius*pi;
    }
    
}
Run Code Online (Sandbox Code Playgroud)

对我来说似乎没问题,但是当我尝试从这样的测试类中使用它时:

public class MyCircleTest {

public static void main(String[] args) {
    double radius = 26.5;
    MyCircle myCoolCircle = new MyCircle(radius);
    System.out.println("Circumference of myCoolCircle: " + myCoolCircle.getCircumference() );
    System.out.println("Area of myCoolCircle: " + myCoolCircle.getArea());
    
Run Code Online (Sandbox Code Playgroud)

输出内容为:
myCoolCircle 的周长:0.0 …

java getter constructor

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

数组没有填充:add方法的使用不正确?

在我的for-loop下面,我试图添加所有car IDS关联到persons具有特定状态的a.

我的代码编译并运行,但是arrayList:的大小listOfCarIds保持为0.即似乎没有添加任何东西

我是如何实现这一点的?

for(int i=0 ; i < personsWithStatus.size() ; i++)
{
  idOfCarRelatingToPerson = personsWithStatus.get(i).getCarId();

  List<String> listOfCarIds = new ArrayList();

  listOfCarIds.add(idOfCarRelatingToPerson);
}
Run Code Online (Sandbox Code Playgroud)

java for-loop arraylist

0
推荐指数
1
解决办法
48
查看次数

如何获取Java 8中所有时区ID的列表?

java.time软件包中,我没有看到获取可用时区ID列表的函数。我能够调用getAvailableIDs()java.util.TimeZone库。但是,我想改用Java 8。

有没有办法做到这一点?

java java-8

0
推荐指数
1
解决办法
2140
查看次数

代码执行后数组的值

我必须使用在执行以下代码后存储的值填充数组:

int[] list = {2, 18, 6, -4, 5, 1};
for (int i = 0; i < list.length; i++) {
    list[i] = list[i] + (list[i] / list[0]);
}
Run Code Online (Sandbox Code Playgroud)

因为list[0]我得到了值3,这是正确的.因为list[1]我得到的值27错了.因为list[2]我得到了9也错了.

谁能告诉我我做错了什么?数组的长度是6,对吗?

java arrays

0
推荐指数
1
解决办法
93
查看次数

如何逐步整理此数据集?

我是一名数据分析初学者,目前正在学习如何在DataCamp中使用R。我希望整理一个可以在R Studio中找到的名为irsi的数据集。我想知道如何逐步清除此数据集,如下所示:

原版的:

head(iris)
   Species     Sepal.Length Sepal.Width  Petal.Length Petal.Width
1  setosa          5.1         3.5          1.4         0.2
2  setosa          4.9         3.0          1.4         0.2
3  setosa          4.7         3.2          1.3         0.2
4  setosa          4.6         3.1          1.5         0.2
5  setosa          5.0         3.6          1.4         0.2
6  setosa          5.4         3.9          1.7         0.4
Run Code Online (Sandbox Code Playgroud)

步骤1:

> head(iris.wide)
  Species Part   Length Width
1  setosa Petal    1.4   0.2
2  setosa Petal    1.4   0.2
3  setosa Petal    1.3   0.2
4  setosa Petal    1.5   0.2
5  setosa Petal    1.4   0.2
6  setosa Petal …
Run Code Online (Sandbox Code Playgroud)

r dataset tidyr

0
推荐指数
1
解决办法
157
查看次数

Java:在ConcurrentHashMap中,为什么在更改密钥时会有不同的输出

第一次迭代: -

class ConcurrentHashMapBehaviour
{       
    public static void main(String[] args) 
    {
        ConcurrentHashMap<String, Integer> map = new ConcurrentHashMap<String, Integer>();
        map.put("ONE", 1);
        map.put("TWO", 2);
        map.put("THREE", 3);
        map.put("FOUR", 4);
        Iterator<String> it = map.keySet().iterator();
        while (it.hasNext()){
            String key = (String) it.next();
            System.out.println(key+" : "+map.get(key));
            map.put("SEVEN", 7);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

输出是:

ONE : 1
FOUR : 4
TWO : 2
THREE : 3
SEVEN : 7
Run Code Online (Sandbox Code Playgroud)

更改密钥后的第二次迭代

class ConcurrentHashMapBehaviour
{       
    public static void main(String[] args) 
    {
        ConcurrentHashMap<String, Integer> map = new 
        ConcurrentHashMap<String, Integer>();

        map.put("ONE", 1); …
Run Code Online (Sandbox Code Playgroud)

java collections concurrenthashmap

0
推荐指数
1
解决办法
58
查看次数

Swift:如何验证社会安全号码 (SSN)?

如何使用 Swift验证 a 是否String编码了有效的美国社会安全号码 (SSN),其模式类似于123-45-6789

验证意味着检查给定的字符串是否与模式匹配123-45-6789

regex ios swift

0
推荐指数
1
解决办法
1622
查看次数

从月份编号到月份名称的时间?

我只需要将月号更改为月份名称 ...

我试着放三个M而不是两个,它显示错误.我知道这个问题,但不知道如何解决它.

DateTimeFormatter formater = DateTimeFormatter.ofPattern("ddMMyyyy");

Person[] people = new Person[parts.length / 4];
int br = 0;
for (int i = 0; i < parts.length; i += 4) {
    LocalDate datum = LocalDate.parse(parts[i + 2], formater);
    people[br++] = new Person(parts[i], parts[i + 1],datum, parts[i + 3]);
}
Run Code Online (Sandbox Code Playgroud)

而不是"1988-05-05",这个"1988年5月 - 05年"......

java

0
推荐指数
1
解决办法
125
查看次数

new Class[]{} 和 new Class[0] 之间有区别吗?

有没有之间的差异new Class[]{}new Class[0]?如果是,有什么不同?

java arrays

0
推荐指数
1
解决办法
59
查看次数

Java中的“范围”是什么?

我刚开始编码。我想对同一个变量使用两次 switch 语句,我被告知要做到这一点,变量必须在“范围内”。

作为初学者,我不知道这意味着什么。那么在范围内是什么意思呢?而且,如果一个变量不在范围内,我如何使它在范围内?

java

-1
推荐指数
1
解决办法
4810
查看次数