반응형

java 162

자바에서 부호 없는 바이트를 만들 수 있나요?

자바에서 부호 없는 바이트를 만들 수 있나요? 부호 있는 바이트를 부호 없는 바이트로 변환하려고 합니다.문제는 수신한 데이터가 서명되지 않았고 Java는 서명되지 않은 바이트를 지원하지 않기 때문에 데이터를 읽을 때 서명된 바이트로 처리된다는 것입니다. Stack Overflow에서 얻은 다음 솔루션으로 변환해 보았습니다. public static int unsignedToBytes(byte a) { int b = a & 0xFF; return b; } 하지만 다시 바이트로 변환되면 동일한 서명된 데이터를 얻을 수 있습니다.이 데이터를 파라미터로 1바이트만 받아들이는 자바 함수의 파라미터로 사용하려고 하기 때문에 다른 데이터형은 사용할 수 없습니다.어떻게 하면 이 문제를 해결할 수 있을까요?Java에서 ..

programing 2022.08.21

스캐너와버퍼리더

스캐너와버퍼리더 를 읽는 인 두 은 '자바'를 사용하는 입니다.Scanner ★★★★★★★★★★★★★★★★★」BufferedReader 그 「미국의 나라」의 「미국의 나라」도 있습니다.BufferedReader는 버퍼를 사용하여 파일을 효율적으로 읽고 물리적 디스크 작업을 방지합니다. 질문은 다음과 같습니다. Scanner 않게 BufferedReader ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★.Scanner에 걸쳐서BufferedReader니면면 대대? Scanner할 때 됩니다.BufferedReader는 스트림을 읽기만 하고 특별한 해석은 하지 않습니다. 할 수 요.BufferedReader a까지scanner해석할 문자의 소스로서 사용됩니다.현재 최신 JDK6 릴리즈/빌드(b27)에서..

programing 2022.08.21

소켓 접속과 읽기 타임아웃의 차이점은 무엇입니까?

소켓 접속과 읽기 타임아웃의 차이점은 무엇입니까? 3가지 질문: 소켓 접속과 읽기 타임아웃의 차이점은 무엇입니까? 접속 타임아웃이 "infinity"로 설정된 것은 무슨 뜻입니까?어떤 상황에서 무한 루프 상태를 유지할 수 있습니까?무한 루프가 죽는 원인이 뭘까요? 읽기 타임아웃이 "infinity"로 설정된 것은 무엇을 의미합니까?어떤 상황에서 무한 루프 상태를 유지할 수 있습니까?무한 루프가 죽는 원인이 뭘까요? 소켓 접속과 읽기 타임아웃의 차이점은 무엇입니까? 접속 타임아웃이란, 최초의 접속을 확립할 때의 타임 아웃(TCP 접속 핸드쉐이크 완료)입니다.읽기 시간 초과는 데이터 읽기1 대기 시 시간 초과입니다.클라이언트가 소켓을 작성한 후 초 이내에 서버(또는 네트워크)가 데이터 을 전송하지 못한 경우..

programing 2022.08.21

Java에서 String이 불변인 이유는 무엇입니까?

Java에서 String이 불변인 이유는 무엇입니까? 인터뷰에서 왜 String은 불변의 존재냐고 물었어요. 나는 이렇게 대답했다. 자바에서 다음과 같은 문자열을 만들 때String s1="hello";오브젝트가 string pool(hello)에 생성되고 s1이 hello를 가리키게 됩니다.다시 한 번 한다면String s2="hello";다른 오브젝트는 생성되지 않지만 s2는 다음을 가리킵니다.hello왜냐하면 JVM은 먼저 문자열 풀에 동일한 개체가 있는지 여부를 확인하기 때문입니다.존재하지 않는 경우, 새로운 것만이 작성됩니다.그렇지 않은 경우는 작성되지 않습니다. 이제 java에서 문자열 변환이 가능한 경우 s1을 로 변경합니다.hello worlds2 값도 마찬가지입니다.hello worldJ..

programing 2022.08.18

BigDecimal setScale 및 라운드

BigDecimal setScale 및 라운드 이 두 통화의 차이점은 무엇입니까? (없습니까?) // 1. new BigDecimal("3.53456").round(new MathContext(4, RoundingMode.HALF_UP)); // 2. new BigDecimal("3.53456").setScale(4, RoundingMode.HALF_UP); 직접 언급되지는 않았지만 언급되지 않은 한 가지 중요한 포인트는 "정밀"과 "규모"의 차이와 두 가지 진술에서 사용되는 방법이다."control"은 숫자의 유효 자릿수의 합계입니다."scale"은 소수점 오른쪽에 있는 자릿수입니다. MathContext 생성자는 정밀도와 반올림 모드만 인수로 받아들이기 때문에 첫 번째 문에는 배율이 지정되지 않습니다..

programing 2022.08.18

Jackson JSON을 사용하여 JSON 문자열을 맵으로 변환하는 방법

Jackson JSON을 사용하여 JSON 문자열을 맵으로 변환하는 방법 다음과 같은 작업을 수행하려고 하지만 작동하지 않습니다. Map propertyMap = new HashMap(); propertyMap = JacksonUtils.fromJSON(properties, Map.class); 그러나 IDE에는 다음과 같이 표시됩니다. 선택되지 않은 할당Map to Map 어떻게 하면 좋을까요?Jackson만 사용하고 있는데, JSON으로 변환하는 네이티브 Java 방법은 없나요? PHP에서는 간단하게json_decode($str)어레이를 돌려받곤 했죠여기도 기본적으로 같은 것이 필요합니다.【2020년 9월 갱신】여러 해 전의 답변이 도움이 되어 아직 표가 올라가고 있습니다만, 지금은 Google의 G..

programing 2022.08.17

Java의 네이티브 키워드는 무엇입니까?

Java의 네이티브 키워드는 무엇입니까? 이 퍼즐(Java 키워드 trivia 게임)을 하다가 우연히 알게 되었습니다.native키워드를 지정합니다. Java의 native 키워드는 무엇에 사용됩니까?최소 실행 가능 예시 Main.java public class Main { public native int square(int i); public static void main(String[] args) { System.loadLibrary("Main"); System.out.println(new Main().square(2)); } } 메인.c #include #include "Main.h" JNIEXPORT jint JNICALL Java_Main_square( JNIEnv *env, jobject ob..

programing 2022.08.15

Retrofit 2를 사용하여 모든 요청에 머리글 추가

Retrofit 2를 사용하여 모든 요청에 머리글 추가 Retrofit 2의 설명서는 다음과 같습니다. 모든 요청에 추가해야 하는 헤더는 OkHttp 대행 수신기를 사용하여 지정할 수 있습니다. 이전 버전을 사용하여 쉽게 수행할 수 있습니다. 다음은 관련 QA입니다. 근데 레트로핏2를 사용해보니 이런 게 없어서setRequestInterceptor또는setInterceptor적용할 수 있는 방법Retrofit.Builder물건. 또 다른 방법은 없는 것 같습니다.RequestInterceptor더 이상 OkHttp에 있지 않습니다.Retrofit의 문서에서는 Interceptor에 대해 언급하고 있습니다. 이 용도로 사용하는 방법을 잘 이해하지 못했습니다. 이거 어떻게 해?OkHttpClient.Buil..

programing 2022.08.15

Apache Camel이 정확히 무엇입니까?

Apache Camel이 정확히 무엇입니까? 카멜이 정확히 뭘 하는지 모르겠어요 Camel에 대해 101단어로 소개하면: 그게 정확히 뭐죠? Java로 작성된 애플리케이션과 어떻게 상호 작용합니까? 서버와 함께 사용할 수 있는 건가요? 독립 프로그램인가요? 카멜이 뭔지 설명해 주세요.좀 더 쉽게 설명할 수 있는 방법으로는... Apache Camel이 무엇인지 이해하려면 Enterprise Integration Patterns가 무엇인지 알아야 합니다. 우선, 우리가 이미 알고 있을 것으로 생각되는 것부터 시작합시다.싱글턴 패턴, 공장 패턴 등 문제에 대한 솔루션을 정리하는 방법일 뿐 그 자체는 해결책이 아닙니다.이들 패턴은 4인조 그룹이 책을 출판할 때 분석하고 추출한 것입니다.디자인 패턴이 덕분에 코..

programing 2022.08.15

잭슨 - 범용 클래스를 사용하여 역직렬화

잭슨 - 범용 클래스를 사용하여 역직렬화 json 문자열이 있으므로 다음 클래스로 직렬화를 해제해야 합니다. class Data { int found; Class hits } 제가 그걸 어떻게 합니까?이것은 통상적인 방법이다. mapper.readValue(jsonString, Data.class); 근데 T는 뭐라고 해야 되지?를 작성해야 합니다.TypeReference사용하는 범용 유형별 오브젝트 및 그것을 역직렬화에 사용합니다.예: mapper.readValue(jsonString, new TypeReference() {}); 이 작업을 수행할 수 없습니다. 다음과 같이 완전히 해결된 유형을 지정해야 합니다.Data.T변수일 뿐이고 무의미합니다. 하지만 만약 네가 그렇게 생각한다면T정적인 것이 아니..

programing 2022.08.14
반응형