Java 149

JUnit 4 테스트에서 특정 예외가 발생한다고 주장하는 방법은 무엇입니까?

JUnit 4 테스트에서 특정 예외가 발생한다고 주장하는 방법은 무엇입니까? JUnit4를 사용하여 일부 코드가 예외를 발생시키는 것을 테스트하려면 어떻게 해야 합니까? 물론 이런 건 할 수 있지만 @Test public void testFooThrowsIndexOutOfBoundsException() { boolean thrown = false; try { foo.doStuff(); } catch (IndexOutOfBoundsException e) { thrown = true; } assertTrue(thrown); } 나는 주석이나 Assert.xyz 같은 것이 이러한 상황에서 훨씬 덜 거칠고 훨씬 더 정신적인 것이라고 기억한다.JUnit 버전과 사용하는 아사트 라이브러리에 따라 달라집니다. JUn..

programing 2022.08.27

Java를 사용하여 정규 표현을 사용하여 더 큰 문자열의 하위 문자열 검색

Java를 사용하여 정규 표현을 사용하여 더 큰 문자열의 하위 문자열 검색 다음과 같은 문자열이 있는 경우: FOO[BAR] 각 괄호 사이에 어떤 문자열이 있어도 문자열을 얻을 수 있도록 문자열에서 "BAR" 문자열을 꺼내는 일반적인 방법이 필요합니다. 예. FOO[DOG] = DOG FOO[CAT] = CAT 비-권리 수량자, 특히 *를 사용할 수 있어야 합니다.아마 다음과 같은 것이 필요할 것입니다. Pattern MY_PATTERN = Pattern.compile("\\[(.*?)\\]"); 그러면 문자열과 일치하는 패턴이 나타나고 첫 번째 그룹의 대괄호 안에 텍스트가 들어갑니다.자세한 내용은 Pattern API 문서를 참조하십시오. 문자열을 추출하려면 다음과 같은 방법을 사용할 수 있습니다. M..

programing 2022.08.27

Mockito를 사용한 클래스의 멤버 변수 모킹

Mockito를 사용한 클래스의 멤버 변수 모킹 저는 개발, 특히 유닛 테스트에 초보자이기 때문에 요구 사항은 매우 간단하지만, 이에 대한 다른 사람의 생각을 알고 싶습니다. 이런 수업이 두 개 있다고 가정해 보자. public class First { Second second ; public First(){ second = new Second(); } public String doSecond(){ return second.doSecond(); } } class Second { public String doSecond(){ return "Do Something"; } } 예를 들어 테스트하기 위해 단위 테스트를 작성한다고 가정해 보겠습니다.First.doSecond()방법.하지만, 만약, 나는 모킹하고 ..

programing 2022.08.25

반사란 무엇이며 왜 유용한가?

반사란 무엇이며 왜 유용한가? 반사란 무엇이며 왜 유용한가? 는 특히 히히 에 관심이 있다.Java어떤 언어에서도 원칙은 같다고 생각합니다.이름 리플렉션은 동일한 시스템(또는 시스템 자체)에서 다른 코드를 검사할 수 있는 코드를 설명하는 데 사용됩니다. 예를 들어 Java에 알 수 없는 유형의 객체가 있고, 존재하는 경우 해당 객체에 대해 'doSomething' 메서드를 호출하려고 합니다.Java의 정적 타이핑 시스템은 객체가 알려진 인터페이스를 준수하지 않는 한 실제로 이것을 지원하도록 설계되지 않았지만, 반사를 통해 당신의 코드는 객체를 보고 'doSomething'이라고 불리는 메서드가 있는지 확인하고 원한다면 호출할 수 있다. Java에서 코드 예를 들자면 (문제의 오브젝트가 foo라고 상상해 ..

programing 2022.08.25

PHP의 join()과 같은 어레이의 Java 함수?

PHP의 join()과 같은 어레이의 Java 함수? 가입하고 싶다String[]끈으로 묶어서.이거 기능 있어요?Java8부터 사용할 수 있습니다.String.join(). String.join(", ", new String[]{"Hello", "World", "!"}) 생성: Hello, World, ! 그렇지 않으면 Apache Commons Lang은 함께 어레이를 결합하는 기능을 가진 클래스를 가지고 있습니다.String. 예를 들어 다음과 같습니다. StringUtils.join(new String[] {"Hello", "World", "!"}, ", ") 다음을 생성합니다.String: Hello, World, ! Android에서 사용할 항목을 찾고 있다면 다음과 같습니다. String an..

programing 2022.08.25

java.util을 피하는 방법동시 수정Array List에서 요소를 삭제하고 반복할 때의 예외

java.util을 피하는 방법동시 수정Array List에서 요소를 삭제하고 반복할 때의 예외 어레이 리스트반복하면서 동시에 요소를 제거해야 합니다.은 분명히 「 」를 던진다.java.util.ConcurrentModificationException. 이 문제에 대처하기 위한 베스트 프랙티스는 무엇입니까?먼저 목록을 복제해야 합니까? 루프 자체에 있는 요소가 아니라 코드의 다른 부분을 제거합니다. 코드는 다음과 같습니다. public class Test() { private ArrayList abc = new ArrayList(); public void doStuff() { for (A a : abc) a.doSomething(); } public void removeA(A a) { abc.remove..

programing 2022.08.25

Java에서 한 디렉토리에서 다른 디렉토리로 파일 복사

Java에서 한 디렉토리에서 다른 디렉토리로 파일 복사 Java를 사용하여 한 디렉토리에서 다른 디렉토리(서브 디렉토리)로 파일을 복사하고 싶습니다. 내의처음 의 다른 디렉토리는 dir.dir의 20개 전에 한 것입니다.이 디렉토리는 반복 직전에 작성한 것입니다.'이렇게 하다', '이렇게 하다'를 따라하고 요.review리뷰를 에서 (ith 텍스트 파일 또는 리뷰를 나타냄)로trainingDir떻게게 해???그런 기능은 없는 것 같습니다(혹은 찾을 수 없었습니다).사합니니다다 boolean success = false; File[] reviews = dir.listFiles(); String trainingDir = dir.getAbsolutePath() + "/trainingData"; File trD..

programing 2022.08.25

비밀번호로 String보다 char[]가 선호되는 이유는 무엇입니까?

비밀번호로 String보다 char[]가 선호되는 이유는 무엇입니까? 에는 Swing이 .getPassword() (비밀(이행)char[]인 ""가 ") getText() (비밀(이행)String 방식입니다.마찬가지로, 저는 이 제품을 사용하지 말자는 제안을 받았습니다.String패스워드를 처리합니다. ?는 왜?String밀번호에 해안?? 안?? ????하기 char[].끈은 불변이다.즉, 일단 이 시스템을 구축한 후자의String다른 프로세스가 메모리를 덤프할 수 있는 경우 가비지 컬렉션이 시작되기 전에 데이터를 삭제할 수 없습니다(반사에서 제외). 어레이를 사용하면 데이터를 모두 삭제한 후 데이터를 명시적으로 삭제할 수 있습니다.어레이를 원하는 것으로 덮어쓸 수 있으며 가비지 수집 전부터 시스템 어디..

programing 2022.08.24

Java에서 2 * (i * i)가 2 * i * i보다 빠른 이유는 무엇입니까?

Java에서 2 * (i * i)가 2 * i * i보다 빠른 이유는 무엇입니까? 다음 Java 프로그램을 실행하는 데 평균 0.50초에서 0.55초가 소요됩니다. public static void main(String[] args) { long startTime = System.nanoTime(); int n = 0; for (int i = 0; i < 1000000000; i++) { n += 2 * (i * i); } System.out.println((double) (System.nanoTime() - startTime) / 1000000000 + " s"); System.out.println("n = " + n); } ★★★을 2 * (i * i)2 * i * i.60~0.이다 왜왜? 나는 각 ..

programing 2022.08.21

Kotlin과 Java의 String은 무엇입니까?

Kotlin과 Java의 String은 무엇입니까? 코틀린에게는ByteArray, ShortArray, IntArray, CharArray, DoubleArray, FloatArray(에 상당합니다).byte[], short[], int[],char[], double[], float[]자바어. 이제 궁금한 게 있는데, 혹시...StringArrayJava와 동등한String[]?특별한 경우는 없다String,왜냐면String는 Java 프리미티브(,,int ...)와 대조적으로 JVM 상의 일반적인 참조 유형입니다. 참조에 저장하는 경우에는 및 같은 오브젝트로 분류해야 합니다.Kotlin과 같은 특수 어레이의 목적은 박스화되지 않은 프리미티브를 저장하여 박스화 및 언박싱 오버헤드를 제거하는 것입니다(Ja..

programing 2022.08.21