인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

강민서님의 프로필 이미지
강민서

작성한 질문수

김영한의 실전 자바 - 기본편

정리

ProductOrderMain 질문입니다

작성

·

14

0

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]
여기에 질문 내용을 남겨주세요.

 

강의에서는 향상된 for문을 이용하여 문제를 풀어주셨는데

일반 for문을 사용해보고 싶어 풀어봤는데 여기서 for문에 orders.length에 빨간줄이 생기면서 (java: incompatible types: int cannot be converted to boolean) 실행이 안되는데 뭐가 문제인가요?

package class1.ex;

public class ProductOrderMain1 {

    public static void main(String[] args) {

        ProductOrder order1 = new ProductOrder();
        order1.productName = "두부";
        order1.price = 2000;
        order1.quantity = 2;

        ProductOrder order2 = new ProductOrder();
        order2.productName = "김치";
        order2.price = 5000;
        order2.quantity = 1;

        ProductOrder order3 = new ProductOrder();
        order3.productName = "콜라";
        order3.price = 1500;
        order3.quantity = 2;

        ProductOrder[] orders = new ProductOrder[]{order1, order2, order3};

        int totalAmount = 0;
        for (int i = 0; orders.length; i++) {
            System.out.println("상품명: " + orders[i].productName + ", 가격: " + orders[i].price + ", 수량: " + orders[i].quantity);
            totalAmount += orders[i].price * orders[i].quantity;
        }
        System.out.println("총 결제: " + totalAmount);
    }
} 

답변 1

1

for문 구조 가 잘못되었네요. i =0; 다음에 orders.length;만 있어서 안되는것입니다.

for(int i = 0; i < orders.length; i++)

이렇게 바꿔주시면 될것입니다.

강민서님의 프로필 이미지
강민서

작성한 질문수

질문하기