Имбирь - твой спиритический овощ. Войти !bnw Сегодня Клубы
Привет, TbI — HRWKA! 1244.0 пользователей не могут ошибаться!
?6962
прекрасное6450
говно5915
говнорашка5512
хуита4734
anime3072
linux2659
music2639
bnw2607
рашка2582
log2369
ололо2228
дунч1868
pic1816
сталирасты1493
быдло1440
украина1439
bnw_ppl1431
дыбр1239
гімно1158

В Java 8 нет unsigned int но зато работать с int можно так так, будто это unsigned int.
Стандартный тип int может принимать значения от -2<sup>31</sup> до 2<sup>31</sup>-1.
При выходе за границы значений не выбрасываются исключения, но может возникнуть ошибка в вычислении.
Поэтому, если мы хотим работать с int как с unsigned int, мы можем продолжать использовать все те же операции с числами, и у нас не будет ошибки вычисления, если число не выходит за границы диапазона от 0 до 2<sup>32</sup>-1.

Для формирования строки, содержащей значение unsigned int, необходимо использовать статический метод Integer.toUnsignedString(int i). Также, можно использовать метод Integer.toUnsignedLong(int i) для получения правильного числа типа long.

Для того, чтобы получить unsigned int из строки содержащей число в диапазоне 0 до 2<sup>32</sup>-1 необходимо использовать статический метод Indeger.parseUnsignedInt(String s). Методы Integer.toUnsignedString(int i) и Indeger.parseUnsignedInt(String s) обращают друг друга.

Приведенный ниже код демонстрирует эти возможности.
```java
public class App {
public static void main(String[] args) {
System.out.println("== Defining and evaluating ints ==");
int i1 = 0x00;
int i2 = 0x7F_FF_FF_FF;
int i3 = 0x80_00_00_00;
int i4 = 0xFF_FF_FF_FF;
int i5 = i3 + 1;
System.out.println("i1: s " + i1 + " u " + Integer.toUnsignedString(i1));
System.out.println("i2: s " + i2 + " u " + Integer.toUnsignedString(i2));
System.out.println("i3: s " + i3 + " u " + Integer.toUnsignedString(i3));
System.out.println("i4: s " + i4 + " u " + Integer.toUnsignedString(i4));
System.out.println("i5: s " + i5 + " u " + Integer.toUnsignedString(i5));

    System.out.println("== Parsing ints ==");
    int i6 = Integer.parseUnsignedInt("0");
    int i7 = Integer.parseUnsignedInt("2147483647");
    int i8 = Integer.parseUnsignedInt("2147483648");
    int i9 = Integer.parseUnsignedInt("4294967295");
    System.out.println("i6: s " + i6 +  " u " + Integer.toUnsignedString(i6));
    System.out.println("i7: s " + i7 +  " u " + Integer.toUnsignedString(i7));
    System.out.println("i8: s " + i8 +  " u " + Integer.toUnsignedString(i8));
    System.out.println("i9: s " + i9 +  " u " + Integer.toUnsignedString(i9));

    System.out.println("== Comparing ints ==");
    boolean s12 = i1 > i2;
    boolean u12 = Integer.compareUnsigned(i1, i2) > 0;
    boolean s23 = i2 > i3;
    boolean u23 = Integer.compareUnsigned(i2, i3) > 0;
    boolean s34 = i3 > i4;
    boolean u34 = Integer.compareUnsigned(i3, i4) > 0;
    System.out.println("i1 > i2: signed: " + s12 + " unsigned: " + u12);
    System.out.println("i2 > i3: signed: " + s23 + " unsigned: " + u23);
    System.out.println("i3 > i4: signed: " + s34 + " unsigned: " + u34);
}

}

Полученный результат:

== Defining and evaluating ints ==
i1: s 0 u 0
i2: s 2147483647 u 2147483647
i3: s -2147483648 u 2147483648
i4: s -1 u 4294967295
i5: s -2147483647 u 2147483649
== Parsing ints ==
i6: s 0 u 0
i7: s 2147483647 u 2147483647
i8: s -2147483648 u 2147483648
i9: s -1 u 4294967295
== Comparing ints ==
i1 > i2: signed: false unsigned: false
i2 > i3: signed: true unsigned: false
i3 > i4: signed: false unsigned: false
```
Этот пост покрывает только часть особенностей Integer, полное описание смотри здесь: https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html

#STAG65 (23) / @hdghg / 3437 дней назад
http://habrahabr.ru/post/240815/ >Также выяснилось что Java в Африке не та же самая Java, и поддержка стойкой криптографии зависит от страны, из-за чего пришлось отложить массовый переход на ECDSA. Что это блядь значит? Там что в другой стране на жабе не заработает Bouncy Castle? https://www.bouncycastle.org/wiki/pages/viewpage.action?pageId=362269 есть там поддержка ECDSA. А если правительства других стран ЗАПРЕЩАЮТ сука использовать какие-то алгоритмы шифрования, то переписывания хуйни с жабы на плюсов нихуя ничего не решит - реализация на плюсах тоже будет запрещенной. Схуя там такие тупые на этом хабре?
#TGYX4J (2) / @j123123 / 3450 дней назад
> Oracle requires you to download the needed files manually after accepting their license through a javascript capable web browser. Заебало, как автоматизировать?
#M5477Z (5) / @anonymous / 3463 дня назад
Есть тут люди, которые рубят во всяких Мавенах и прочих унылых ужасах? * Есть Hello World на Котлине: http://pastebin.com/QWwn6WcX * Есть описание проекта для Мавена: http://pastebin.com/1zb8Dy7T -- тоже ничего особенного, фактически минимум, чтобы Котлин собирался. Если билдишь в чистый каталог, то всё зашибись. А если билдишь поверх уже собранного, то выдаёт следующую дрянь: ``` [INFO] Kotlin Compiler version 1.0.0-beta-2189 [INFO] Compiling Kotlin sources from [D:\tmp\mav\mavk2\my-app\src\main\kotlin] [INFO] Classpath: D:\tmp\mav\mavk2\my-app\target\classes;C:\Users\d\.m2\repository\org\jetbrains\kotlin\kotlin-stdlib\0.1-SNAPSHOT\kotlin-stdlib-0.1-SNAPSHOT.jar;C:\Users\d\.m2\repository\org\jetbrains\kotlin\kotlin-runtime\0.1-SNAPSHOT\kotlin-runtime-0.1-SNAPSHOT.jar [INFO] Classes directory is D:\tmp\mav\mavk2\my-app\target\classes [INFO] Module name is my-app [ERROR] D:\tmp\mav\mavk2\my-app\src\main\kotlin\name\dluciv\test1\App.kt: (4, 1) 'public fun main(args: kotlin.Array<kotlin.String>): kotlin.Unit' is already defined in name.dluciv.test1 ``` Т.е. он **до смерти** пугается только что откомпилированного самим собой кода. С Java таких дурацких проблем, понятное дело, нету. С какой стати это происходит и как бороть?
#I8D5NT (12) / @dluciv / 3529 дней назад

java.text.Normalized.isNormalized(...) на мегабайтном файле может работать ОЧЕНЬ медленно, но если разрезать на куски по килобайту и прочекать каждый, то всего несколько мс

#YNC1B6 (1) / @hirthwork / 3533 дня назад

если нормализовать текст сразу в NFC, то время выполнения составляет 87 секунд. а если сначала в NFD, а затем в NFC, то 17

#4B1MSV (0) / @hirthwork / 3535 дней назад

java.net.URI.create(String) выполняет юникодную нормализацию uri. \u0438\u0306 будет превращено в \u0439, точнее, в %d0%b9, потому что "й" оно и в Африке "й". Жаль только, не все HTTP-клиенты так делают

#S4HSB7 (0) / @hirthwork / 3538 дней назад

открыл для себя java.text.Normalizer
три года мечтал о таком

#XDCCE6 (0) / @hirthwork / 3539 дней назад

ёбаный type erasure. это говно даже хуже чем невозможность перегрузить функцию в сишечке по типам входных значений

#C11LZP (4) / @hirthwork / 3545 дней назад

dae

public interface GenericAutoCloseable<E extends Exception> extends AutoCloseable {
    @Override
    void close() throws E;
}
#X6HCWI (4) / @hirthwork / 3563 дня назад
Никто не знает как собирать maven штоле?
#PKXFIC (5) / @l29ah / 3626 дней назад

I used to be an adventurer like you, then I dereferenced NULL pointer

#D3WTUR (3) / @hirthwork / 3639 дней назад

Сука, нахуй я про дизайн паттерны прочитал?
Теперь хочется все переписать, что до этого написал.

#56FXQL (22+2) / @xenomorph / 3646 дней назад

позавчера вышла tika-1.9 наконец-то умеет толком извлекать всякую метаинфу из видеофайлов

#PGF48F (8) / @hirthwork / 3659 дней назад

tfw кто-то в 2017 году всё ещё использует Closeable объекты вне try-with-resources

#KMCHMX (0+1) / @hirthwork / 3662 дня назад
#Y222LO (11+2) / @l29ah / 3678 дней назад

public class AsyncLock
Можно было бы поставить тег */b/ если бы я это в репозиторий не запушил

#M6TEH3 (3) / @hirthwork / 3683 дня назад
*будующее *хуюдующее http://dump.bitcheese.net/files/ocepygu/2015-05-29-135909_1366x768_scrot.png Пишу на джаваскрипте в веб-морде кривой джава-опердени скрипты которые спаривают иксемелями друг с другом китайский говнороутер и мускуль.
#B2S3ZW (3) / @lexszero / 3686 дней назад
--
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

Цоперайт © 2010-2016 @stiletto.