//错误提示:else if(weather==2) 这一行有if 但是没有else


import java.util.Scanner;
public class Weather
{
    public static void main(String[] args){
        System.out.println("晴天:1  阴天:2");
        System.out.print("今天天气怎么样:");
        //输入天气的语句
        Scanner input1=new Scanner(System.in);
        int weather=input1.nextInt();
         if(weather==1){
            System.out.print("请输入你的天气的温度:");
            //输入温度的语句
            Scanner input2=new Scanner(System.in);
                double temp=input2.nextDouble();
            if(temp>=30.0){
                //输入性别的语句
                System.out.println("男:1  女:2");
                System.out.print("你的性别是:");
                Scanner input3=new Scanner(System.in);
                int sex=input3.nextInt();
                   if(sex==1)
                    System.out.println("请带墨镜!");
                    else if(sex==2)
                        System.out.println("请涂防晒霜!");
                    
            }
            else
                System.out.println("你输入的温度格式不合法或低于三十度  请重新输入!");

          else if(weather==2) {
                System.out.println("男:1  女:2");
                System.out.print("请输入你的性别:");
                Scanner input3=new Scanner(System.in);
                int sex=input3.nextInt();
            
                if(sex==1)
                    System.out.println("请带一把大黑伞");
                else if(sex==2)
                    System.out.println("请带一把小花伞!");
            }    
            
                
           }
         
        
    }
}
 if(temp>=30.0){
                //输入性别的语句
                System.out.println("男:1  女:2");
                System.out.print("你的性别是:");
                Scanner input3=new Scanner(System.in);
                int sex=input3.nextInt();
                   if(sex==1)
                    System.out.println("请带墨镜!");
                    else if(sex==2)
                        System.out.println("请涂防晒霜!");
                    
            }
            else
                System.out.println("你输入的温度格式不合法或低于三十度  请重新输入!");

在最下面加一个 }。你这是括号问题

else if(weather==2) {前面少了一个大括号,修改如下:

import java.util.Scanner;
public class Weather
{
    public static void main(String[] args){
        System.out.println("晴天:1  阴天:2");
        System.out.print("今天天气怎么样:");
        //输入天气的语句
        Scanner input1=new Scanner(System.in);
        int weather=input1.nextInt();
         if(weather==1){
            System.out.print("请输入你的天气的温度:");
            //输入温度的语句
            Scanner input2=new Scanner(System.in);
                double temp=input2.nextDouble();
            if(temp>=30.0){
                //输入性别的语句
                System.out.println("男:1  女:2");
                System.out.print("你的性别是:");
                Scanner input3=new Scanner(System.in);
                int sex=input3.nextInt();
                   if(sex==1)
                    System.out.println("请带墨镜!");
                    else if(sex==2)
                        System.out.println("请涂防晒霜!");
                    
            }
            else
                System.out.println("你输入的温度格式不合法或低于三十度  请重新输入!");
 
          }else if(weather==2) {
                System.out.println("男:1  女:2");
                System.out.print("请输入你的性别:");
                Scanner input3=new Scanner(System.in);
                int sex=input3.nextInt();
            
                if(sex==1)
                    System.out.println("请带一把大黑伞");
                else if(sex==2)
                    System.out.println("请带一把小花伞!");
         } 
    }
}