gpt4 book ai didi

java - 为树集增加值(value)

转载 作者:行者123 更新时间:2023-12-01 23:41:32 26 4
gpt4 key购买 nike

我读了文字。我的文字是这样的

AYSE;SERDAR-9.8;EMRE-5.2;AYTAC-3.3
FATMA;OYTUN-8.8;ORKUN-7.5;ONUR-5.4;UMUT-4.4;BERK-3.3;CAN-3.2
DERYA;VELI-7.7;ALI-6.5;SUAT-6.0;YAVUZ-5.0;OYTUN-4.2;ORKUN-3.1
DILARA;DOGUS-8.8;VELI-7.4;ALI-6.5;SUAT-5.5;YAVUZ-3.1
BEGUM;SUAT-6.6;YAVUZ-5.1;OYTUN-4.3;ORKUN-4.0
BERIL;CANER-8.7;DOGUS-7.5;VELI-6.2;ALI-6.1;SUAT-5.8;YAVUZ-4.8;OYTUN-4.0
FUNDA;ORKUN-9.7;ONUR-8.3;UMUT-7.2;BERK-6.5;CAN-5.5
ISIL;AYTAC-8.3;CANER-7.4;DOGUS-6.5;VELI-5.5;ALI-5.4;SUAT-4.4;YAVUZ-4.0;OYTUN-3.9;ORKUN-3.5;ONUR-3.4;UMUT-3.2;BERK-3.1;CAN-3.0
ELIF;EMRE-7.4;AYTAC-6.1

我无法将“u.eleman”和“u.uyum”值添加到“treeset tSU”。当我执行 syso 时,它会给出内存地址,但我在 tSU TREESET 中看不到它们。我想将它们全部添加到树集中。我怎样才能做到这一点..请帮忙

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.Reader;
import java.io.UnsupportedEncodingException;
import java.util.HashMap;
import java.util.HashSet;
import java.util.TreeSet;

public class Rapor {

static class Uyum implements Comparable<Uyum> {
String eleman;
Double uyum;

public int compareTo(Uyum u) {
if (uyum < u.uyum)
return -1;
if (uyum > u.uyum)
return 1;
return 0;
}
}
public static void main(String[] args) {
FileInputStream fIS;

try {
fIS = new FileInputStream("C:\\deneme\\rapor.txt");
Reader r;
r = new InputStreamReader(fIS, "UTF-8");
BufferedReader bR = new BufferedReader(r);

String satır;
String[] point, p2;
while ((satır = bR.readLine()) != null) {
point = satır.split(";");
String kelime = point[0];
HashMap<String, TreeSet<Uyum>> uyumlar = new HashMap<String, TreeSet<Uyum>>();
TreeSet<Uyum> tSU = new TreeSet<Uyum>() ;
Uyum u ;

for (int i = 1; i < point.length; i++) {
p2=point[i].split("\\-");
u = new Uyum();
u.eleman = p2[0];//EMRE,AYTAC,..
u.uyum = Double.parseDouble(p2

[1]);//7.8,9.5
tSU.add(u);

}

uyumlar.put(kelime, tSU);
System.out.println(uyumlar);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}// main end

}// class end

最佳答案

it gives memory address when ı do syso ı cant see them in the tSU TREESET.

不,它不打印内存地址。它以十六进制打印对象的类名、@ 和哈希码 - 这就是 Object.toString() 默认情况下所做的。

如果您希望以不同方式打印 Uyum 对象,请重写 Uyum 类中的 toString() 方法。

关于java - 为树集增加值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17857666/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com