Pytania otagowane jako java

Java jest popularnym językiem programowania wysokiego poziomu. Użyj tego tagu, jeśli masz problemy z używaniem lub rozumieniem samego języka. Ten znacznik jest rzadko używany samodzielnie i jest najczęściej używany w połączeniu z [spring], [spring-boot], [jakarta-ee], [android], [javafx], [gradle] i [maven].


7
Czy szybsze jest dodawanie do kolekcji, a następnie sortowanie, czy dodawanie do posortowanej kolekcji?
Jeśli mam Maptaki: HashMap<Integer, ComparableObject> map; i chcę uzyskać zbiór wartości posortowanych przy użyciu naturalnego porządku, która metoda jest najszybsza? (ZA) Utwórz instancję sortowanej kolekcji, na przykład ArrayListdodaj wartości, a następnie posortuj ją: List<ComparableObject> sortedCollection = new ArrayList<ComparableObject>(map.values()); Collections.sort(sortedCollection); (B) Utwórz wystąpienie uporządkowanej kolekcji, na przykład TreeSet, a następnie dodaj …

3
Łapanie wielu wyjątków w Javie-8
Podczas wypróbowania funkcji Multi-catch znalazłem w mojej m1()metodzie wszystko działa dobrze zgodnie z oczekiwaniami. Jednak w m2()tym samym kodzie nie kompiluje się. Właśnie zmieniłem składnię, aby zmniejszyć liczbę wierszy kodu. public class Main { public int m1(boolean bool) { try { if (bool) { throw new Excep1(); } throw new …

3
Jakie jest znaczenie java.util. @ Nullable?
Czytam kod z Guawy, w którym znalazłem adnotację java.util.@Nullablew jakimś kodzie. Znam znaczenie @Nullable, ale nie rozumiem tego. W szczególności nie mogę znaleźć klasy o nazwie Nullablew pakiecie java.util. Proszę, ktoś powie mi, co to oznacza java.util.@Nullable: public static <T> java.util.@Nullable Optional<T> toJavaUtil( @Nullable Optional<T> googleOptional) { return googleOptional == …
56 java 

3
Wyjście -1 staje się ukośnikiem w pętli
Niespodziewanie następujące kody wyjściowe: / -1 Kod: public class LoopOutPut { public static void main(String[] args) { LoopOutPut loopOutPut = new LoopOutPut(); for (int i = 0; i < 30000; i++) { loopOutPut.test(); } } public void test() { int i = 8; while ((i -= 3) > 0) ; …
54 java  string  while-loop  jvm  jit 

3
Dlaczego javac dopuszcza niektóre niemożliwe rzuty, a inne nie?
Jeśli spróbuję rzucić Stringajava.util.Date , kompilator Java wyłapuje błąd. Dlaczego więc kompilator nie oznacza następującego błędu jako błędu? List<String> strList = new ArrayList<>(); Date d = (Date) strList; Oczywiście JVM rzuca ClassCastException w czasie wykonywania, ale kompilator go nie oflaguje. Zachowanie jest takie samo w przypadku javac 1.8.0_212 i 11.0.2.

2
Jak mogę przekazać zbiór wyjątków jako główną przyczynę?
Jakaś metoda myMethodwywołuje kilka równoległych wykonywania i oczekuje na ich zakończenie. Te równoległe wykonywanie może zakończyć się wyjątkami. Więc myMethoddostaje listę wyjątków. Chcę przekazać listę wyjątków jako główną przyczynę, ale główną przyczyną może być tylko jeden wyjątek. Jasne, że mogę stworzyć własny wyjątek, aby osiągnąć to, czego chcę, ale chcę …
52 java  exception 


5
java.util.ConcurrentModificationException w działaniu onCreate
W ostatnim wydaniu, w którym dodałem MoPub za pośrednictwem pośrednictwa reklam AdMob, widzę kilka ConcurrentModificationException w dziennikach awarii. Wszystko wydaje się być rodzimym kodem i jestem w najnowszej wersji wszystkich bibliotek związanych z reklamami i związanych z Google / Androidem. Ktoś już na to wpadł? java.lang.RuntimeException: at android.app.ActivityThread.performLaunchActivity (ActivityThread.java:3121) at …
48 java  android  admob  mopub 

3
Czy jakieś kompilatory dla JVM używają „szerokiego” goto?
Myślę, że większość z was wie, że gotojest to zastrzeżone słowo kluczowe w języku Java, ale tak naprawdę nie jest używane. Prawdopodobnie wiesz również, że gotojest to kod operacyjny Java Virtual Machine (JVM). Sądzę wszystkich skomplikowanych struktur przepływu kontrola Java, Scala i Kotlin są na poziomie JVM, realizowane przy użyciu …
47 java  jvm  goto 



3
Dlaczego 11010100 << 1 oznacza 110101000, a nie 10101000?
Dlaczego, kiedy próbuję przesunąć bity dla 11010100 2 , wynik to 110101000 2 , a nie 10101000 2 . int a = Integer.parseInt("11010100", 2) &lt;&lt; 1; Próbuję to zrobić: int a = (byte)(Integer.parseInt("11010100", 2) &lt;&lt; 1); Ale jeśli wartość wyjściowa jest większa niż 128, wszystko idzie w minus, co jest …
40 java  bit-shift 

2
Jak wykonać przeciąganie (oparte na współrzędnych myszy X, Y) na Androidzie za pomocą AccessibilityService?
Chcę wiedzieć, jak wykonać przeciąganie na Androidzie oparte na współrzędnych myszy X, Y? rozważ jako dwa proste przykłady, Team Viewer / QuickSupport rysujący odpowiednio „wzorzec hasła” na zdalnym smartfonie i piórze Windows Paint. Wszystko, co jestem w stanie zrobić, to symulacja dotyku (z dispatchGesture()i również AccessibilityNodeInfo.ACTION_CLICK). Znalazłem te linki, ale …

6
Kod skrótu ArrayList, który zawiera się jako element
Czy możemy znaleźć hashcodecoś, listco zawiera się jako element? Wiem, że to zła praktyka, ale o to pytał ankieter. Kiedy uruchomiłem następujący kod, generuje on StackOverflowError: public class Main { public static void main(String args[]) { ArrayList&lt;ArrayList&gt; a = new ArrayList(); a.add(a); a.hashCode(); } } Teraz mam dwa pytania: Dlaczego …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.